Commit Graph

6583 Commits

Author SHA1 Message Date
Rémi Verschelde 11572c6e30
Editor: Cleanup some includes dependencies
Removes some unnecessary includes from `editor_node.h`, and instead add
those where they're used.

Removes unnecessary `editor_node.h` includes in various editor classes.

Renames `dynamicfont` to `dynamic_font` in a couple files.

Misc cleanup while jumping through that rabbit hole.
2022-02-15 14:54:15 +01:00
Rémi Verschelde 760a95e86a
Merge pull request #57877 from bruvzg/subpixel_gl_pos 2022-02-15 13:58:38 +01:00
Rémi Verschelde 78a767edb3
Merge pull request #35679 from Calinou/doc-add-xml-schema 2022-02-15 13:14:58 +01:00
Haoyu Qiu b4ffaebb87 Fix infinite recursion when seeking Ogg Vorbis file 2022-02-15 15:11:05 +08:00
Hugo Locurcio b68dd2e189
Add an XML schema for documentation
This makes it easier to spot syntax errors when editing the
class reference. The schema is referenced locally so validation
can still work offline.

Each class XML's schema conformance is also checked on GitHub Actions.
2022-02-15 00:03:31 +01:00
Rémi Verschelde d02db6306e
Merge pull request #58105 from trollodel/nuke_p_editor_editor_plugin 2022-02-14 21:10:38 +01:00
trollodel cd1d7294d8 Remove the EditorNode parameter from EditorPlugins create methods
Remove EditorNode usage from the Navigation editor plugin.
2022-02-14 18:21:42 +01:00
Haoyu Qiu b5badd12c6 Fix crash and memory leak when importing OGG Vorbis 2022-02-15 00:25:02 +08:00
Rémi Verschelde f810f76890
Merge pull request #57306 from trollodel/remove_editornode_param 2022-02-14 16:40:40 +01:00
trollodel 05b56f316d Remove most EditorNode constructor parameters and fields 2022-02-14 14:16:24 +01:00
kleonc 5422d863e1 NavMap Fix polygons being treated like triangle strips instead of triangle fans 2022-02-13 19:26:17 +01:00
Rémi Verschelde 7224389468
Merge pull request #57954 from TokageItLab/refactor-cubic-interpolate
Implement `cubic_interpolate()` as MathFunc for refactoring
2022-02-13 10:34:13 +01:00
jmb462 e5657a4fbf Fix renaming function dialog in VisualScript does not work correctly 2022-02-12 21:28:28 +01:00
bruvzg 29199579f7
Add sub-pixel glyph positioning support. 2022-02-12 19:55:52 +02:00
Hendrik Brucker 77fb65debf Use EditorFileDialog instead of FileDialog in the project manager 2022-02-12 12:06:51 +01:00
Rémi Verschelde d1dbe21c56
Merge pull request #57980 from akien-mga/vulkan-1.3.204 2022-02-12 10:21:27 +01:00
Silc 'Tokage' Renew 865da09871 Implement cubic_interpolate() as MathFunc for refactoring 2022-02-12 18:11:17 +09:00
Rémi Verschelde 7a7fabe4f6
Merge pull request #57641 from Geometror/compilation-time-improvements-1 2022-02-12 09:46:02 +01:00
Hendrik Brucker b396fd4eef Improve compilation speed (forward declarations/includes cleanup) 2022-02-12 02:46:22 +01:00
strank dcf19f8914 Fix "Identifier not found" compiler error when accessing inherited signals or functions as callables. 2022-02-11 20:45:04 -05:00
Rémi Verschelde 18d6b75ba8
RendererRD: Remove binding specifier for push constants
This is unsupported and glslang made it raise an error in 11.7.0:
https://github.com/KhronosGroup/glslang/pull/2810

Co-authored-by: Clay John <claynjohn@gmail.com>
2022-02-11 18:42:32 +01:00
Fazil Babu 92f4c33492 CSG Meshes can be exported as glTF 2022-02-11 22:48:28 +05:30
Ignacio Roldán Etcheverry f4478843ca
Merge pull request #57917 from raulsntos/csharp-signal-documentation
Support signals in C# generated documentation
2022-02-11 14:51:57 +01:00
Raul Santos f380a8e0ec Support signals in C# documentation 2022-02-10 16:02:31 +01:00
Rémi Verschelde 1bdb82c64e
Fix typos with codespell
Using codespell 2.2-dev from current git.

Added `misc/scripts/codespell.sh` to make it easier to run it once in a
while and update the skip and ignore lists.
2022-02-10 12:30:19 +01:00
Rémi Verschelde 90162851a7
Core: Move generated `VERSION_HASH` to a `.cpp` file
This lets us have its definition in `core/version.h` and avoid
rebuilding a handful of files every time the commit hash changes.
2022-02-09 09:20:17 +01:00
Rémi Verschelde ba1024f42d
Merge pull request #57822 from Calinou/ios-remove-armv7 2022-02-08 23:25:16 +01:00
Rémi Verschelde 25d4c14fef
Merge pull request #57627 from JFonS/occluder_improvements 2022-02-08 23:23:50 +01:00
Ignacio Roldán Etcheverry f05f2dd80f
Merge pull request #57076 from IgorKordiukiewicz/fix-mono-string-capitalize
String.Capitalize() in C# now matches the behaviour of String::capitalize() in C++
2022-02-08 22:16:54 +01:00
Hugo Locurcio 74fc4410f4
Remove support for ARMv7 (32-bit) on iOS
All iOS devices since the iPhone 5S support ARMv8 (64-bit).

The last iOS version supported on ARMv7 devices is 10.x, which is
too old to run Godot 4.0 projects since the minimum supported
iOS version is 11.0.
2022-02-08 22:11:29 +01:00
Rémi Verschelde 4a2f22daf4
Merge pull request #57798 from akien-mga/scons-module-tests-simplify 2022-02-08 14:36:31 +01:00
Rémi Verschelde 3495288b03
SCons: Improve logic to generate `modules_tests.gen.h`
This removes the need for `AlwaysBuild` by ensuring that the proper
files are being tracked as `Depends`.
2022-02-08 13:01:35 +01:00
Rémi Verschelde f9e496168f
Merge pull request #57786 from 0And/vectorslerp 2022-02-08 12:56:43 +01:00
Rémi Verschelde a66e55069e
Merge pull request #57796 from akien-mga/revert-sname-theme-setters 2022-02-08 11:13:24 +01:00
Rémi Verschelde 6eeeb9a63c
Re-add missing `SNAME` macros in `get_theme_*` calls
They were removed in the previous commit reverting the addition of `SNAME`
to `add_theme_*` and theme setter methods, which is not wanted.
2022-02-08 10:31:56 +01:00
Rémi Verschelde fc076ece3d
Revert "Add missing SNAME macro optimization to all theme methods call"
This reverts commit a988fad9a0.

As discussed in #57725 and clarified in #57788, `SNAME` is not meant to be used
everywhere but only in critical code paths. For theme methods specifically, it
was by design that only getters use `SNAME` and not setters.
2022-02-08 10:17:25 +01:00
Rémi Verschelde 317cd0b19a
Refactor some object type checking code with `cast_to`
Less stringly typed logic, and less String allocations and comparisons.
2022-02-08 10:08:34 +01:00
Andrew Jacob 8675ff0a74 Allow C# Vector2/3 slerp values to have any length 2022-02-07 22:58:43 -07:00
Rémi Verschelde d35269ab21
Merge pull request #57764 from timothyqiu/octant-delete 2022-02-07 18:28:27 +01:00
Rémi Verschelde 05bad19a9a
Merge pull request #57752 from Calinou/doc-csg-nodes-performance 2022-02-07 18:27:58 +01:00
Haoyu Qiu 5d4a141c97 Fix GridMap memory leak 2022-02-08 00:27:01 +08:00
Hugo Locurcio 5268786ac0
Document performance limitations with CSG nodes, link to tutorial 2022-02-07 15:55:02 +01:00
Fabio Alessandrelli 086256431a [Net] Add type check to GDScriptRPCCallable.
It will print an error when using an RPC defined on an object which does
not extend Node.
2022-02-07 13:39:45 +01:00
Fabio Alessandrelli 994638da4f [Net] Implement GDScript custom RPC callable. 2022-02-07 13:39:10 +01:00
Rémi Verschelde 1694626e03
Merge pull request #57305 from bruvzg/macos_cleanup 2022-02-07 13:36:09 +01:00
Rémi Verschelde 6a56314eab
Merge pull request #57748 from fabriceci/rename-script-template-variable 2022-02-07 13:22:23 +01:00
jfons dd970482c5 Improvements and fixes to occluders
Improvements:
* Occluder3D is now an abstract type inherited by: ArrayOccluder3D, QuadOccluder3D, BoxOccluder3D, SphereOccluder3D and PolygonOccluder3D. ArrayOccluder3D serves the same purpose as the old Occluder3D (triangle mesh occluder) while the rest are primitives that can be used to manually place simple occluders.
* Occluder baking can now apply simplification. The "bake_simplification_distance" property can be used to set a world-space distance as the desired maximum error, set to 0.1 by default.
* Occluders can now be generated on import. Using the "occ" and "occonly" keywords (similar to "col" and "colonly" for colliders) or by enabling on MeshInstance3Ds in the scene's import window.

Fixes:
* Fixed saving of occluder files after bake.
* Fixed a small error where occluders didn't correctly update in the rendering server.

Bonus content:
* Generalized "CollisionPolygon3DEditor" so it can also be used to edit Resources. Renamed it to "Polygon3DEditor" since it was already being used by other things, not just colliders.
* Fixed a small bug in "EditorPropertyArray" where a call to "remove" was left after the "remove_at" rename.
2022-02-07 13:04:51 +01:00
Rémi Verschelde bfb75d107c
Merge pull request #57741 from Chaosus/vs_fixes 2022-02-07 12:50:44 +01:00
fabriceci e81ccaf270 rename jump force to jump velocity 2022-02-07 11:46:30 +01:00
Rémi Verschelde b024602660
Merge pull request #57725 from jmb462/missing-sname-theme-setters 2022-02-07 11:46:25 +01:00
Yuri Roubinsky a6e280c5de Add some more fixes to visual shader 2022-02-07 11:28:42 +03:00
Raul Santos 303f0c8626 Attach mono thread before getting nativeName field
In order to access the `nativeName` constant field from a C# class, the
mono scope thread must be attached or the mono domain will be null.
2022-02-07 03:43:34 +01:00
jmb462 a988fad9a0 Add missing SNAME macro optimization to all theme methods call 2022-02-06 23:06:11 +01:00
Rémi Verschelde eb4b4a317b
Merge pull request #57649 from Faless/net/4.x_ws_queue_hostres
[Net] Non-blocking WebSocket hostname resolution.
2022-02-05 18:23:11 +01:00
Jordan Schidlowsky 1ec96bc206 [Net] Non-blocking WebSocket hostname resolution.
Hostname is now resolved during poll in WebSocketClient (wslay) to avoid
blocking during connect.
An attempt is still made to find the hostname in the resolver cache.
2022-02-05 02:22:43 +01:00
K. S. Ernest (iFire) Lee 419b342a9a Faster CVTT by reducing quality.
Make BC6 and BC7 CVTT faster while still having better quality than DXT5.
2022-02-04 15:15:26 -08:00
Rémi Verschelde 77d08b68b0
Merge pull request #49445 from Calinou/gdscript-highlight-namespace-reserved-keyword 2022-02-04 19:03:28 +01:00
Rémi Verschelde 2885befbe6
Merge pull request #55950 from Faless/mp/4.x_replication_nodes 2022-02-04 19:03:10 +01:00
Rémi Verschelde 61c57491bc
Merge pull request #57625 from akien-mga/core-split-vector2i-own-header 2022-02-04 19:00:39 +01:00
Hugo Locurcio de45534fed
Highlight "namespace" as a GDScript keyword in the syntax highlighter
Like "trait" and "yield", "namespace" is currently not implemented
but is still reserved for future use.
2022-02-04 17:46:13 +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
Rémi Verschelde 8495be9cec
Merge pull request #57621 from akien-mga/core-split-rect2i-own-header 2022-02-04 16:05:30 +01:00
Ignacio Roldán Etcheverry 721c32ee2b
Merge pull request #57618 from Densorius/master
Fixed opening new instances of VS 2022 while a instance is already open
2022-02-04 15:05:51 +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
Rémi Verschelde 89eb6d372d
Merge pull request #57591 from vnen/gdscript-enum-fixes 2022-02-04 13:49:15 +01:00
Densorius 93e2d0446f Fixed opening new instances of VS 2022 while a instance is already open 2022-02-04 10:40:43 +01:00
bruvzg 244db37508
Cleanup and move char functions to the `char_utils.h` header. 2022-02-04 11:35:01 +02:00
Densorius 9ea0508d35 Add Visual Studio 2022 support with fallback to 2019 2022-02-04 00:34:02 +01: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 c47f059776
Merge pull request #57467 from webbuf/modules-initialize
Initialized Member Variables in /modules
2022-02-03 20:41:29 +01:00
George Marques ceafdf347e
GDScript: Treat enum values as int and enum types as dictionary
Since enums resolve to a dictionary at runtime, calling dictionary
methods on an enum type is a valid use case. This ensures this is true
by adding test cases. This also makes enum values be treated as ints
when used in operations.
2022-02-03 13:32:34 -03:00
George Marques b013c0d544
GDScript: Allow tests to run on release builds
- Fix compilation issues by disabling warnings on release builds. This
  also strips warnings from expected result before the comparison to
  avoid false mismatches.
- Add a `#debug-only` flag to tests. Must be the first line of the test
  script. Those won't run with release builds. Can be used for test
  cases that rely on checks only available on debug builds.
2022-02-03 13:32:33 -03:00
George Marques ad6e2e82a9
GDScript: Consolidate behavior for assigning enum types
This makes sure that assigning values to enum-typed variables are
consistent. Same enum is always valid, different enum is always
invalid (without casting) and assigning `int` creates a warning
if there is no casting.

There are new test cases to ensure this behavior doesn't break in
the future.
2022-02-03 13:32:16 -03:00
zwebb 466661c78f initialized member variables in header 2022-02-03 11:14:42 -05:00
Rémi Verschelde 45d5aa5d47
Merge pull request #56365 from aaronfranke/default-shape-size 2022-02-03 16:59:07 +01:00
bruvzg 5676b3c022
HarfBuzz: Update to version 3.3.1 2022-02-02 22:29:31 +02:00
bruvzg 215bede6ff
[TextServer] Add function to change font, font size, and OpenType features without invalidating line break points, justification points, or recreating shaped text buffer. 2022-02-02 11:20:44 +02:00
Lisandro Lorea 69e30d91ee
Fix "texture not initialized" error preventing video from playing
Closes #57153
2022-02-01 23:55:17 -03:00
bruvzg 33d6d4bdf7
[macOS] Enable Objective-C ARC 2022-02-01 15:58:30 +02:00
Rémi Verschelde d4e21b7d62
Merge pull request #57358 from akien-mga/signal-bindings-object 2022-02-01 14:24:47 +01:00
Aaron Franke 8cfd264148
Improve the default size for 3D shapes (Box, Capsule, and Cylinder) 2022-02-01 06:43:16 -06:00
Pawel Lampe a30dd094d3 Fix transforms involved into navmesh baking
Within the context of parsing navigation geometry, this commit:
- added missing transform of `MultiMeshInstance`
- changed all transforms to global ones so that they don't need to be
  calculated by hand
2022-01-31 23:07:45 +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
Rémi Verschelde 2f57a11ed9
Merge pull request #55785 from nathanfranke/clang-tidy 2022-01-29 13:46:38 +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
Marcel Admiraal 51834a4589 Be more verbose about why msbuild tools could not be found 2022-01-29 07:16:34 +00:00
Yuri Sizov 49eddd22e0 Update icons and color conversion rules to simplify the palette 2022-01-29 01:03:39 +03:00
Rémi Verschelde 7c3003fcbe
Improve some signal bindings to use specific `Object` subtypes 2022-01-28 15:35:40 +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 b6d3f44095
Merge pull request #57310 from raulsntos/rename-subsequence
Rename C# `IsSubsequenceOfI` to `IsSubsequenceOfN`
2022-01-27 16:54:41 +01:00
Rémi Verschelde 899cd34426
Merge pull request #57281 from Rubonnek/rename-subsequence 2022-01-27 11:03:13 +01:00
Raul Santos 6ecb92a1fc
Rename C# `IsSubsequenceOfI` to `IsSubsequenceOfN` 2022-01-27 03:04:16 +01:00
Wilson E. Alvarez 3eb5e0ac50
Rename String::is_subsequence_ofi to String::is_subsequence_ofn 2022-01-26 18:03:56 -05:00
Bastiaan Olij 98e5cd24db Improve XRInterface hooks into rendering 2022-01-26 13:55:44 +11:00
cdemirer 28ac4d8b7d Fix crash with non-constant keys in match statement Dictionary pattern 2022-01-26 04:10:07 +08: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
Paweł Fertyk 12d0ff1a4d Issue 57130 Fix GLTFDocument.generate_scene if state is null 2022-01-25 00:48:12 +01:00
Rémi Verschelde bd4d57ede2
BaseButton: Rename `pressed` property to `button_pressed`
This fixes a conflict with the `pressed` signal.

The new name is temporary and only intended to solve the conflict for upcoming
alpha builds. Discussions are still ongoing regarding the BaseButton API and
how to rename and refactor more of its properties, signals and methods to have
a clearer API in 4.0.
2022-01-23 22:15:09 +01:00
Lyuma e8da21dc6b etcpak: Workaround multiple-of-4 requirement for 3D texture mipmaps. 2022-01-23 11:32:05 -08:00
kobewi 98692d68c3 Minor tweaks and fixes to panning 2022-01-23 13:49:53 +01:00
Igor Kordiukiewicz 6c3b6664b5 String.Capitalize() in C# now matches the behaviour of String::capitalize() in C++ 2022-01-23 13:24:04 +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
K. S. Ernest (iFire) Lee b69b526b7c GDScript cache crashfix. 2022-01-22 17:42:54 -08:00
Lyuma b1b20f5f91 Pad etcpak input to 4x4 blocks. Fixes #49981 2022-01-22 17:20:17 -08:00
Rémi Verschelde e363f404a5
Merge pull request #57000 from KoBeWi/UNLIMITED_PANNING 2022-01-23 00:47:52 +01:00
Rémi Verschelde 00f8b56f1f
Merge pull request #57044 from Calinou/doc-csgpolygon3d-points 2022-01-23 00:30:03 +01:00
Rémi Verschelde e1706be25d
Merge pull request #57052 from KoBeWi/nosort 2022-01-23 00:27:01 +01:00
Rémi Verschelde b5f524d4c0
Merge pull request #55433 from V-Sekai/prev_operand_nullptr_check
Check for nullptr expression in parse_precedence function
2022-01-22 20:31:45 +01:00
Rémi Verschelde 182a36db47
Merge pull request #55214 from Scony/fix-gdscript-crash-2
Fix GDScript parser crash on 'dollar mixed with assignment' expression
2022-01-22 20:30:54 +01:00
kobewi f056cb8ebc Don't sort printed Dictionary 2022-01-22 13:45:02 +01:00
Hugo Locurcio 69617a893e
Improve CSGPolygon3D documentation
- Describe why polygon triangulation usually fails in the error message.
2022-01-21 20:00:34 +01:00
kobewi 74bfe88267 Add ViewPanner to 2D editor 2022-01-21 18:35:06 +01:00
Rémi Verschelde 20dfa0c60b
Merge pull request #56252 from Gallilus/Update-visual-script-property-selector 2022-01-21 10:35:19 +01:00
Rémi Verschelde cfb986c631
Merge pull request #51452 from omar-polo/fix-macros 2022-01-20 22:50:39 +01:00
Rémi Verschelde e6170aae39
Merge pull request #55066 from trollodel/less_singletons_in_editornode 2022-01-20 22:29:17 +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
trollodel aa1102fc53 Store panels and docks singletons in their own classes 2022-01-20 20:13:26 +01: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 65c3f2c049
Merge pull request #56855 from rafallus/gridmap_bake_staticbody 2022-01-20 12:10:34 +01:00
Rémi Verschelde 7057d26343
Merge pull request #56936 from BastiaanOlij/add_tracking_confidence 2022-01-20 12:09:06 +01:00
Bastiaan Olij 173105596e Adding a tracking confidence state to XRPose 2022-01-20 10:35:50 +11:00
Paulb23 f43f68f605 Convert TextEdit callbacks to Callable 2022-01-19 17:26:22 +00:00
Rémi Verschelde bc5ba38ff5
Merge pull request #56619 from timothyqiu/left-right-palette 2022-01-18 16:38:09 +01:00
Rémi Verschelde ce2b5bdfa8
Merge pull request #52969 from bruvzg/locale_detection 2022-01-18 15:43:04 +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 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 846c14eee9
Merge pull request #56739 from strank/master
GDScript: Fix parsing default parameter values from function calls
2022-01-17 21:38:01 +01:00
David Cambré 3a82f66974 Improve Visual Script editor to suggest the proper visual script nodes. 2022-01-17 20:22:22 +01:00
Rémi Verschelde 4cfade6212
Merge pull request #55995 from Xwdit/enum_fix
Fix enum int comparison
2022-01-17 20:20:16 +01:00
Rémi Verschelde 91909ef801
Merge pull request #55625 from cdemirer/fix-type-guessing-and-gdscript-parser-printing
Fix `--test gdscript-parser` crash
2022-01-17 20:17:02 +01:00
Rémi Verschelde 12ab19fa26
Merge pull request #55616 from cdemirer/master
Fix nested ternary-if codegen
2022-01-17 20:16:26 +01:00
bruvzg e02a097280
[TextServer] Implement locale and context sensitive case conversion functions. 2022-01-17 14:23:36 +02:00
rafallus cc46abd73d Consider gridmap collisions in navigation bake 2022-01-16 18:56:10 -06:00
Yuri Roubinsky 02e6745271
Merge pull request #56832 from Chaosus/fix_theming 2022-01-16 16:02:22 +03:00
Yuri Roubinsky 5003d4351e Fix theming update in several editor classes 2022-01-16 14:49:03 +03:00
Ignacio Roldán Etcheverry e527687e1e
Merge pull request #55679 from raulsntos/script_reload_fix
C# scripts reload in editor fixed
2022-01-16 11:56:39 +01:00
Rémi Verschelde a27b85378b
Merge pull request #56309 from Calinou/remove-pvrtc-support 2022-01-16 11:15:34 +01:00
Paulb23 fffeecfd68 Improvments for SyntaxHighlighters
- Fix immedate Funcion in lamba highlight
- Highlight signals as one colour
- Highlight node paths as one colour
- Highlight escape chars in strings
2022-01-15 15:39:55 +00:00
Haoyu Qiu 95050ce042 Fix crash when exiting the editor 2022-01-15 11:22:18 +08: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 3efa6644c4
Merge pull request #55541 from KoBeWi/outcognito_scripts 2022-01-14 21:04:13 +01:00
Rémi Verschelde afaf0c98f8
Merge pull request #56762 from bruvzg/mac_fix_sc 2022-01-14 20:57:57 +01:00
K. S. Ernest (iFire) Lee 8d02759c72
Use ThorVG instead of NanoSVG for importing SVGs
ThorVG is a platform-independent portable library for drawing vector-based
scene and animation.

Co-authored-by: Rémi Verschelde <rverschelde@gmail.com>
2022-01-14 15:49:39 +01:00
luz paz 858bcd5058 Fix various typos
Found via `codespell -q 3 -S ./thirdparty,*.po,./DONORS.md -L ackward,ang,ans,ba,beng,cas,childs,childrens,dof,doubleclick,expct,fave,findn,gird,hist,inh,inout,leapyear,lod,nd,numer,ois,ony,paket,ro,seeked,sinc,switchs,te,uint,varn,vew`
2022-01-13 23:20:01 -05:00
strank 960a26f6c0 GDScript: Fix parsing default parameter values from function calls 2022-01-13 19:28:39 -05:00
bruvzg fff3c38af9
[macOS] Fix self-contained mode, by looking for `._sc_` and writing data to the bundle directory instead of executable directory. 2022-01-13 21:29:22 +02:00
Ignacio Roldán Etcheverry 2dee116ba7
Merge pull request #56735 from raulsntos/fix-56733
Fix marshaling values of generic Godot Dictionary
2022-01-13 17:48:22 +01:00
Rémi Verschelde f0382530a7
Merge pull request #56268 from KoBeWi/🚗complete_setters 2022-01-13 12:40:48 +01:00
kobewi f524ddebd5 Make script type distinguishable by icon 2022-01-13 12:29:05 +01:00
Rémi Verschelde 35fff9a55e
Merge pull request #55124 from akien-mga/freetype-2.11.0 2022-01-13 10:50:44 +01:00
Rémi Verschelde f615926d3c
freetype: Update to upstream version 2.11.1 2022-01-13 08:40:18 +01:00
bruvzg baec983d8a
[TextServer] Improvements for line breaking, "Fill" alignment, overrun, and interaction between these modes.
Fix "Fill" alignment processing wrong side of the text if overrun trim was applied.
Improve "Fill" alignment to avoid adding excessive subsequent spaces or elongations.
Add font detection to the overrun, to correctly add ellipsis (was using last glyph font, which doesn't necessary have dot character).
Improve line breaking to avoid adding excessive subsequent soft break points for languages without word separator.
Port missing overrun/justification code to the Fallback text server.
Fix inferred text direction detection by controls.
Add tests for "Fill" alignment and line breaking glyph flags.
2022-01-13 08:53:28 +02:00
Raul Santos e4c40efeab
Fix marshaling values of generic Godot Dictionary 2022-01-12 23:26:51 +01:00
Rémi Verschelde adc66be7be
Merge pull request #56722 from akien-mga/glslang-support-system-library 2022-01-12 16:04:59 +01:00
Rémi Verschelde 42d3993446
Merge pull request #56692 from JFonS/fix_gizmo_secondary_handles 2022-01-12 15:53:06 +01:00
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 8c76ad188b
glslang: Fix support for building against public/system library
Fix include paths to support both vendored and system-installed glslang.

Remove usage of the private `StandAlone` bits.
Requires us to vendor a copy of `DefaultTBuiltInResource` (or provide our own
customized one) as glslang doesn't provide it in its public API.
Also removes unused C interface as it's not well encapsulated and depends on
`StandAlone`.

Fixes #56307.
2022-01-12 14:36:02 +01:00
jfons 5ebea2d120 Fix secondary handles in editor gizmos
Primary and secondary handles are no longer differentiated by their ids, so a bool was added to tell them apart in all the handle-related methods.

Includes a minor fix in CollisionPolygon3DEditor, unrelated to editor gizmos.
2022-01-12 14:21:20 +01:00
Rémi Verschelde ac9f303e6d
Merge pull request #56646 from Chaosus/vst_context_menu 2022-01-12 11:39:06 +01:00
Rémi Verschelde b5495783b2
Merge pull request #53185 from KoBeWi/viewing_pan 2022-01-12 11:36:41 +01:00
Rémi Verschelde e664d195cb
Merge pull request #56693 from timothyqiu/vs-i18n
i18n: Make VisualScript node caption & text translatable
2022-01-12 08:05:17 +01:00
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 d40d86b959
Merge pull request #56667 from Ice-Cube69/fix_incorrect_property_types 2022-01-11 14:34:18 +01:00
Haoyu Qiu 9b373642a5 i18n: Make VisualScript node caption & text translatable 2022-01-11 21:18:15 +08:00
kobewi ba7ed05792 Unify panning in sub-editors and make it configurable 2022-01-11 13:57:19 +01:00
Arnav Vijaywargiya 0c46f73b5e Fixed incorrect property types 2022-01-11 17:17:11 +05:30
SaracenOne 64d8b3aef2 Assign member type when parsing setters to prevent
'Compiler bug: unresolved assign' errors
2022-01-11 11:23:17 +00:00
Rémi Verschelde b3513cffc5
Merge pull request #56326 from NNesh/fix/unknown_default_value_callable
Extended the _make_arguments_hint function to get default values for function arguments in hint
2022-01-10 21:29:13 +01:00
NNesh 374baff747 Fixed <unknown> text for callable default value for a function arguments hint
Format switch

Added a case for constant subscripts

Fixed default value hinting for the enum type

Removed is_null checking for value

Added a case for dictionary
2022-01-10 23:22:35 +05:00
Rémi Verschelde 49482966ec
Merge pull request #55715 from nathanfranke/enum-ordered 2022-01-10 17:19:52 +01:00
Rémi Verschelde 1989120d3f
Merge pull request #56194 from cdemirer/fix-operation-result-type-inference 2022-01-10 17:18:32 +01:00
Rémi Verschelde 4acc819f9b
Merge pull request #56232 from V-Sekai/invalid_explicit_variant_assign_fix 2022-01-10 17:12:56 +01:00
Rémi Verschelde cc7f634066
Merge pull request #56260 from cdemirer/fix-type-mutation-upon-assignment-with-operation 2022-01-10 17:12:34 +01:00
Rémi Verschelde c8b4fe3b8d
Merge pull request #56287 from cdemirer/fix-member-property-only-getter-cant-be-set 2022-01-10 17:12:06 +01:00
Rémi Verschelde 1fd5954962
Merge pull request #56288 from cdemirer/fix-member-property-getter-dont-update-subscript-chain-root 2022-01-10 17:10:57 +01:00
Rémi Verschelde 8f8c3f4b4c
Merge pull request #56342 from NNesh/fix/class-completion 2022-01-10 17:07:08 +01:00
Rémi Verschelde b3d208385f
Merge pull request #56409 from cdemirer/fix-unexpected-copying-when-parameter-is-typed 2022-01-10 17:03:47 +01:00
Rémi Verschelde eea510fc35
Merge pull request #56651 from gerhean/Fix-leak-when-function-returning-parent-class-type 2022-01-10 16:59:36 +01:00
Rémi Verschelde 7faf02383c
Merge pull request #55225 from bruvzg/fix_ligature_cursor_and_ot_features 2022-01-10 13:32:54 +01:00
Rémi Verschelde cf25090cc8
Merge pull request #56662 from timothyqiu/fbx-fixes 2022-01-10 13:01:30 +01:00
Rémi Verschelde b6aedc160d
Merge pull request #56663 from bruvzg/fix_tab_inf_loop 2022-01-10 12:33:44 +01:00
Rémi Verschelde 0464db3da8
Merge pull request #56602 from V-Sekai/csg_selection 2022-01-10 12:31:59 +01:00
Haoyu Qiu af67e4c291 Fix crash on importing FBX file 2022-01-10 18:24:31 +08:00
bruvzg af6758e008
Fix freezes when tab is zero or negative width. 2022-01-10 12:19:29 +02:00
bruvzg 8c973f21ee
Fix glyph index for bitmap fonts.
Fix TextEdit glyph position rounding.
2022-01-10 08:00:27 +02:00
Ger Hean 609964848d Fix leak when function returning self type
Leak is caused by cyclic reference
2022-01-10 02:14:48 +08:00
bruvzg c89c515ccf
[TextServer] Improve ligature cursor handling.
Fix mid-grapheme hit test.
Fix OpenType features property handling, add default features override option.
Enable mid-grapheme cursor by default.
2022-01-09 19:03:48 +02:00
Yuri Roubinsky e9694a8971 Add context menu to visual script editor 2022-01-09 19:19:39 +03:00
Rémi Verschelde 32abe36cce
Merge pull request #56617 from AnilBK/use_fill
Use fill() to fill an entire image instead of setting pixels individually.
2022-01-08 23:38:06 +01:00
K. S. Ernest (iFire) Lee b468104842 Skip Draco-compressed glTF 3d format files. 2022-01-08 10:14:46 -08:00
Haoyu Qiu 8fc73539e9 Allow showing both left and right side panels 2022-01-08 20:31:22 +08:00
Anilforextra c9f5d88f3a Use fill() to fill an entire image instead of setting pixels individually. 2022-01-08 17:43:15 +05:45
NNesh 1a1ee43e3e Fixed completion showing for class members 2022-01-08 01:49:18 +05:00
SaracenOne 7f16bed947 Fix selection of CSG objects 2022-01-07 19:57:02 +00:00
kobewi 9e095bb68b Fix some more wrong node names 2022-01-07 00:27:20 +01:00
Rémi Verschelde 393a44b275
Merge pull request #55213 from Scony/fix-gdscript-crash 2022-01-06 20:54:03 +01:00
bruvzg c69e0d16bc
Fix multiple missing UTF-8 decoding. 2022-01-06 14:35:22 +02:00
JFonS 1f0dc02649
Merge pull request #56006 from KoBeWi/6yearslater
Add physics material to GridMap
2022-01-06 13:28:42 +01:00
Yuri Roubinsky 21cfcaa129 Add a GDScript template for `VisualShaderNodeCustom` 2022-01-06 12:06:33 +03:00
Rémi Verschelde 3662105f8b
Merge pull request #56479 from V-Sekai/import-options 2022-01-05 20:44:42 +01:00
Rémi Verschelde 2c7fcdd7f9
Merge pull request #56352 from Gallilus/Include-base-signals-to-VisualScriptEmitSignal 2022-01-05 11:02:10 +01:00
Rémi Verschelde 118f6d42ac
Merge pull request #56380 from RedMser/export_gltf_normal_crash 2022-01-05 10:46:32 +01:00
Rémi Verschelde c6bd3ca191
Merge pull request #56290 from nikitalita/fix-gltf-mesh-prims 2022-01-05 10:34:08 +01:00
K. S. Ernest (iFire) Lee 07a39684a0 options dict is now passed to _import_scene. 2022-01-05 01:07:54 -08:00
Rémi Verschelde 6d4ed65f4c
Merge pull request #56483 from vnen/gdscript-warning-annotation
Add annotation to ignore warnings
2022-01-05 09:05:56 +01:00
K. S. Ernest (iFire) Lee 5ce54ce142
Merge pull request #52541 from V-Sekai/gltf-load-scene-buffer
Add gltf import buffer.
2022-01-04 12:12: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
Ellen Poe cd91f91d40
Merge pull request #56375 from Cnidarias/ogg_missing_right_channel
Fix OGG Vorbis playback with more than one channel
2022-01-04 07:51:07 -08:00
K. S. Ernest (iFire) Lee d8923d8c74 Add import glb from buffer
Split functions from gltf document import and export into six functions.

Use base path to allow two code paths based on an empty base path or a full base path.

Add uri decode in _parse_buffers.
2022-01-04 06:06:03 -08:00
George Marques fd643c903d
GDScript: Add annotation to ignore warnings 2022-01-04 09:32:43 -03:00
Rémi Verschelde fe52458154
Update copyright statements to 2022
Happy new year to the wonderful Godot community!
2022-01-03 21:27:34 +01:00
Rémi Verschelde 98b3ba1842
Merge pull request #53957 from fabriceci/new-template-workflow 2022-01-03 20:40:33 +01:00
cdemirer 3033e0f8a2 Fix gdscript-parser crash
Fixes gdscript-parser crashing while printing empty identifiers.
2022-01-03 08:47:18 +08:00
fabriceci 9d5b807059 Improve editor template workflow
Co-Authored-By: jmb462 <jmb462@gmail.com>
2022-01-02 21:52:09 +01:00
kobewi 2cad775461 Fix usage of "Return" in the docs 2022-01-02 21:09:18 +01:00
luz paz a124f1effe Fix various typos
Found via ` codespell -q 3 -S ./thirdparty,*.po,./DONORS.md -L ackward,ang,ans,ba,beng,cas,childs,childrens,dof,doubleclick,expct,fave,findn,gird,hist,inout,leapyear,lod,nd,numer,ois,ony,paket,seeked,sinc,switchs,te,uint,varn`
Update editor/import/resource_importer_layered_texture.cpp

Co-authored-by: Raul Santos <raulsntos@gmail.com>
Update doc/classes/TileSetScenesCollectionSource.xml

Co-authored-by: Raul Santos <raulsntos@gmail.com>
Update scene/gui/graph_edit.cpp

Co-authored-by: Raul Santos <raulsntos@gmail.com>
Update scene/resources/animation.cpp

Co-authored-by: Raul Santos <raulsntos@gmail.com>
Update scene/resources/animation.cpp

Co-authored-by: Raul Santos <raulsntos@gmail.com>
Update scene/resources/animation.cpp

Co-authored-by: Raul Santos <raulsntos@gmail.com>
Update scene/gui/rich_text_label.cpp

Co-authored-by: Raul Santos <raulsntos@gmail.com>
Revert previously committed change
2022-01-02 01:03:58 -05:00
cdemirer 511e699fee Fix unexpected Packed Array copying when parameter is typed 2022-01-02 05:43:52 +08:00
RedMser 0e36d5e782 Fix glTF scene export crash on null normal texture
Also removes a redundant get_texture call directly below
the modified code block.

Fixes #56379
2021-12-31 17:45:03 +01:00
Cnidarias 51106a481c Fix OGG Vorbis playback with more than one channel
When an OGG Vorbis file has more than one channel we accidentily were
assigning only the left channel to both the L and R channels of the
AudioFrame output buffer
2021-12-31 15:31:57 +01:00
David Cambré 6a2a9d2267 Include base signals to VisualScriptEmitSignal 2021-12-30 20:08:54 +01:00
Raul Santos 5254b28632
Fix getting properties state when reloading C#
When reloading C# classes and keep their properties values they are
retrieved and stored in a state list.
Retrieving the properties was only getting the fields of the C# class
and not inherited fields so those properties values were lost on reload.
Now we also try to find the field in the parent classes.
2021-12-28 18:28:01 +01:00
nikitalita f34ea3873e FIX GLTF Document mesh primitive conversions 2021-12-27 17:36:58 -08:00
cdemirer bb9469aa65 Fix member properties with getters don't update as subscript chain root 2021-12-28 07:52:44 +08:00
cdemirer e8305e17ff Fix member properties with only getters can't be set 2021-12-28 07:51:18 +08:00
kobewi c055c912fb Remove autocomplete_setters_and_getters setting 2021-12-27 00:48:32 +01:00
cdemirer 067b4c8c07 Fix type mutation upon compound assignment 2021-12-27 03:32:22 +08:00
SaracenOne b22c805dbe Fix 'Compiler bug: unresolved assign' on explicitly annotated variants. 2021-12-25 00:53:57 +00:00
cdemirer 455cc07f90 Fix operation result type inference 2021-12-23 20:45:24 +08:00
Raul Santos 1fdfc379b6 Fix `KeyValuePairAt` memory leak 2021-12-23 03:15:57 +01:00
Fabio Alessandrelli e375cbd094 Bump mbedTLS version to 2.28.0 (new LTS).
Keep applying the windows entropy patch (UWP support).
Remove no longer needed padlock patch.
Update thirdparty README to reflect changes, and new source inclusion
criteria.
2021-12-21 13:26:02 +01:00
Nathan Franke b5b75cad43
Use OrderedHashMap for enum_values 2021-12-16 21:49:42 -08:00
kobewi 59a9b2192e Add physics material to GridMap 2021-12-17 01:50:58 +01:00
Xwdit 0430e26e6d Fix enum int comparison
Fix enum int comparison
2021-12-16 16:14:14 +01:00
Fabio Alessandrelli c5879dbe07
Merge pull request #53129 from Faless/net/4.x_enet_opts
[Net] ENet poll optimizations, fragmented unreliable transfer.
2021-12-15 16:02:55 +01:00
Jordan Schidlowsky 373d5ea103 [Net] ENet poll now only service the connection once.
It used to call `enet_host_service` until all events were consumed, but
that also meant constantly polling the connection leading to potentially
unbounded processing time.

It now only service the connection once, and instead consumes all the
retrieved events via `enet_host_check_events`.
2021-12-15 14:03:42 +01:00
Jordan Schidlowsky 397d895fb7 [Net] ENetMultiplayerPeer now sends fragmented packets unreliably too.
It used to always send them reliably when transfer mode was unreliable
or ordered if the packet size was more then the enet host MTU (1400
bytes by default).

This commit also adds a warning when debug is enabled to explain the
effects of sending fragmented packets unreliably.
2021-12-15 14:03:42 +01:00
Rémi Verschelde 703a1be507
Merge pull request #55952 from Faless/net/4.x_webrtc_mp_connect_fix 2021-12-15 12:38:10 +01:00
Fabio Alessandrelli 84112d9610 [Net] Fix WebRTC returning packets from peers too early.
Due to the async nature of WebRTC implementations, the multiplayer peer
could end up having queued packets from a given connection before it is
able to emit the "peer_added" signal.
This commit ensures that packets from peers which are not notified yet
are skipped by `get_packet` and `get_available_packet_count`.
2021-12-15 11:07:46 +01:00
bruvzg 01bac2c469
[Text Server] Fix re-shaping of substrings, improve oversampling scale. 2021-12-15 11:57:22 +02:00
Gilles Roudière ab8119b5f6 Avoid a crash in the gdscript analyser 2021-12-14 15:54:25 +01:00
Yuri Roubinsky a2ef2b0be1 Fix incorrect placement of default value editor in visual scripts 2021-12-13 19:32:24 +03:00
Yuri Roubinsky 566895732c Fix shadowed global identifier warning duplication 2021-12-13 11:54:23 +03:00
Ellen Poe fe51c099c1 Fix OGG streams never ending playback 2021-12-10 18:09:58 -08:00
Rémi Verschelde f19a1e28c8
Revert "Fix auto reload scripts on external change" 2021-12-10 22:40:20 +01:00
Rémi Verschelde 0ba7103bea
Merge pull request #55702 from nekomatata/physics-solver-settings 2021-12-10 22:10:41 +01:00
Aaron Franke 368c0bc0ac
Misc build system fixes 2021-12-10 12:14:27 -06:00
cdemirer 1cf3f382ba Fix "Lookup Symbol" on global class members
"Lookup Symbol" on global class members now does switch to the relevant script.
2021-12-10 19:56:46 +08:00