Commit Graph

5877 Commits

Author SHA1 Message Date
Juan Linietsky c370b4c4d0
Merge pull request #52544 from JFonS/lod_fixes
Auto LOD fixes and improvements
2021-09-30 14:49:11 -03:00
Rémi Verschelde d2b8560d7a
Revert "GdScript: Use reduced constant expression result when doing binary operations. Fixes #50293"
This reverts commit 6207708607.

It broke a GDScript test (which didn't exist back when the PR was made,
so was missed prior to the merge).

It choked on:
```
prints("a", test_instance.a, test_instance.a == Named.VALUE_A)
```
With:
```
Invalid operands "VALUE_A (enum value)" and "int" for "==" operator.
```
2021-09-30 18:57:59 +02:00
Rémi Verschelde 7f8e50801e
Merge pull request #51818 from MarianoGnu/gdscript2-enum-fixes 2021-09-30 18:35:49 +02:00
Hugo Locurcio f4bebc272c
Document how to set up UPnP in a non-blocking manner 2021-09-30 18:28:12 +02:00
Hugo Locurcio 570cdc128f
Rename Node's `filename` property to `scene_file_path` for clarity 2021-09-30 16:50:25 +02:00
Max Hilbrunner ac7505e277
Merge pull request #53227 from Calinou/rename-getornull
Rename RID's `getornull()` to `get_or_null()`
2021-09-30 12:56:01 +02:00
Manuele Finocchiaro b55fd934ee
Compile bullet with threasafe switch on
(cherry picked from commit 6f81c213a6)
2021-09-30 10:46:02 +02:00
Rémi Verschelde 71f8b809b2
bullet: Sync with upstream 3.17
Stop include Bullet headers using `-isystem` for GCC/Clang as it misleads
SCons into not properly rebuilding all files when headers change.

This means we also need to make sure Bullet builds without warning, and
current version fares fairly well, there were just a couple to fix (patch
included).

Increase minimum version for distro packages to 2.90 (this was never released
as the "next" version after 2.89 was 3.05... but that covers it too).

Fixes #43868.

(cherry picked from commit b7901c773c)
2021-09-30 10:45:40 +02:00
jfons 3f6ed10a5d Occlusion culling fixes
Fixes some issues found by UBSAN and other misc things:
* Fixed memory leak on exit.
* Properly align ray packet buffer to 64 bytes.
* Added some compiler flags from Embree's build system.
* Fixed ray masks.
2021-09-30 02:01:36 +02:00
Hugo Locurcio ba65730cbf
Rename RID's `getornull()` to `get_or_null()` 2021-09-29 23:58:02 +02:00
Rémi Verschelde e1f7e4ef8f
Merge pull request #53221 from bruvzg/fix_fb_text_server
[Fallback TextServer] Fix char to glyph conversion.
2021-09-29 23:01:50 +02:00
Lyuma 5ffda27ea9 gltf export: Fix export of skeletons, skins and blend shapes.
Create GLTFSkeleton at the same time we create GLTFNode objects.
Create GLTFSkin at the same time we export MeshInstance3D
Fixes export of blend shape arrays for meshes with multiple surfaces.
Fixes array indexing issues in export of glTF morph target animations.

Converts BoneAttachment3D nodes during normal node creation: this avoids
special cases during mesh export, and especially exporting skeletons or meshes
which are children of BoneAttachment3D.

Co-authored-by: K. S. Ernest (iFire) Lee <ernest.lee@chibifire.com>
2021-09-29 13:07:52 -07:00
bruvzg 3c005948ca [Fallback TextServer] Fix char to glyph conversion. 2021-09-29 19:06:54 +03:00
Rémi Verschelde 2fc31fdfca
Merge pull request #53217 from Faless/ext/fix_pointer_info 2021-09-29 17:41:58 +02:00
Rémi Verschelde 27d4e2f09f
Merge pull request #53216 from vnen/gdscript-builtin-type-not-id 2021-09-29 17:04:24 +02:00
George Marques 72c07708e8
GDScript: Don't allow builtin type names as identifiers 2021-09-29 11:23:16 -03:00
Fabio Alessandrelli 0276c2e74a Fix const pointers types in docs and extension API.
The GDVIRTUAL_NATIVE_PTR did not declare the correct GDNativeConstPtr
template, resulting in "void*" being used as it's type info in both the
documentation and the extension API dump.
2021-09-29 16:04:20 +02:00
George Marques 991f4d8527
GDScript: Fix assignment with operation for properties 2021-09-29 10:54:16 -03:00
Rémi Verschelde c1f59139b4
Merge pull request #53092 from Razoric480/lsp-report-_init 2021-09-29 15:47:31 +02:00
Francois Belair 7468dd65a5 Make LSP report _init instead of Object::new 2021-09-29 08:42:01 -04:00
Rémi Verschelde ea0a9e6ed3
Merge pull request #52800 from akien-mga/gdscript-remove-exp_range 2021-09-29 13:33:59 +02:00
Rémi Verschelde ad635567b1
Merge pull request #53189 from AnilBK/use-class-specific-funcs 2021-09-29 07:40:52 +02:00
Rémi Verschelde 1bf0e875d8
Merge pull request #53106 from ganondev/cs-rpc-attribute-names 2021-09-29 07:06:49 +02:00
Anilforextra fc9767abb1 Use functions defined in the their classes. 2021-09-29 09:36:34 +05:45
Camille Mohr-Daurat 341b532d5e
Merge pull request #52754 from nekomatata/dynamic-body-modes
Clarify RigidDynamicBody modes
2021-09-28 17:11:17 -07:00
Edward Auttonberry c86ab40389 Update C# RPC attributes to share new Any/Auth naming convention
Update attribute class references in mono cache
2021-09-28 17:43:40 -04:00
Rémi Verschelde 96766516ec
Merge pull request #53166 from JFonS/force_embree_opt 2021-09-28 16:32:13 +02:00
jfons b197fc2079 Force optimized builds for thirdparty Embree files 2021-09-28 14:35:21 +02:00
Fabio Alessandrelli d18cbdf5e4
Merge pull request #52481 from Faless/net/4.x_native_peers
[Net] Extension system for network peers, webrtc.
2021-09-28 12:57:45 +02:00
Rémi Verschelde a56e8f8afc
Merge pull request #53160 from BastiaanOlij/improve_xr_server_cleanup 2021-09-28 08:44:54 +02:00
Bastiaan Olij 0623d3676b Improve unregistering XR interfaces so we don't get crashes in GDExtensions by destroying the XRServer too early 2021-09-28 12:25:15 +10:00
jitspoe 1da948a688 CSGPolygon fixes and features: Angle simplification, UV tiling distance, interval type. 2021-09-27 21:24:19 -04:00
Rémi Verschelde 5503059f3b
Merge pull request #53145 from bruvzg/fix_trim_width_reset
Fix trim overrun width not being reset.
2021-09-27 23:46:19 +02:00
bruvzg 11a49c2f29 Fix trim overrun width not being reset. 2021-09-27 21:51:18 +03:00
Pedro J. Estébanez 0fa574c051 Fix check for freed object during cast 2021-09-27 19:35:26 +02:00
Camille Mohr-Daurat 27417c065d
Merge pull request #53118 from BimDav/physicsbody_to_kinematic
Reload kinematic shapes when changing PhysicsBody mode to Kinematic
2021-09-27 08:53:36 -07:00
jfons 9e1810695c Auto LOD fixes and improvements
* Fixed LODs for shadow meshes.
* Added a merging step before simplification. This helps with tesselated
  meshes that were previously left untouched. The angle difference at
  wich edges ar considered "hard" can be tweaked as an import setting.
* LODs will now start with the highest decimation possible and keep
  doubling (approximately) the number of triangles from there. This
  makes sure that very low triangle counts are included when possible.
* Given more weight to normal preservation.
* Modified MeshOptimizer to report distance-based error instead of
  including attributes in the reported metrics.
* Added attribute transference between the original mesh and the
  various LODs. Right now only normals are taken into account,
  but it could be expanded to other attributes in the future.
2021-09-27 17:04:56 +02:00
Rémi Verschelde 281d0bd59e
Merge pull request #53109 from aaronfranke/fix-gltf-light 2021-09-27 16:18:35 +02:00
Pedro J. Estébanez ee238b2a4d Fix inverted error messages about null object 2021-09-27 13:58:46 +02:00
Rémi Verschelde 1ae922a829
Merge pull request #53122 from AnilBK/whats-segement-can-i-render-it 2021-09-27 13:53:51 +02:00
Anilforextra d090925d98 Fix Typo: Segement. 2021-09-27 17:05:23 +05:45
Fabio Alessandrelli e96e268e3b [ENet] Fix server not correctly relaying peer disconnects. 2021-09-27 11:40:21 +02:00
BimDav 3540e716f9 init_kinematic_utilities from the start for kinematic bodies 2021-09-27 09:58:26 +02:00
BimDav 112985c5bc Reload kinematic shapes when changing PhysicsBody mode to Kinematic to prevent a crash when calling test_body_motion. Call reload_kinematic_shapes from init_kinematic_utilities as they are always called together. 2021-09-27 09:44:09 +02:00
Aaron Franke f3e76a5397
Fix GLTF light import 2021-09-26 21:57:25 -05:00
Francois Belair 044daf9b8d Remove duplicate WorkspaceEdit from LSP 2021-09-25 15:17:19 -04:00
Rémi Verschelde 14dcb97556
Merge pull request #50378 from Razoric480/apply-edit-40 2021-09-25 20:43:17 +02:00
Rémi Verschelde 9013771b53
Merge pull request #51518 from Calinou/doc-network-android-permission 2021-09-25 15:36:18 +02:00
Hugo Locurcio 7a62bd1e44
Document Android permission requirements for network access where needed 2021-09-25 12:32:46 +02:00
Rémi Verschelde 0abe464162
Merge pull request #52849 from KoBeWi/know_no_binds 2021-09-25 00:10:56 +02:00
Fabio Alessandrelli 2d810e8cd9 [Net/Docs] Update extensions documentation. 2021-09-24 21:23:43 +02:00
Fabio Alessandrelli ead6d10715 [Net/GDNative] Remove GDNative network bits. 2021-09-24 21:23:43 +02:00
Fabio Alessandrelli 6cb81543d4 [Net] Expose WebRTC classes to extensions. 2021-09-24 21:23:43 +02:00
Fabio Alessandrelli 25226329be [Net] MultiplayerPeer cleanup, defaults. 2021-09-24 18:40:39 +02:00
kobewi 7bf5fc709e Remove binds from Signal.connect 2021-09-24 17:07:33 +02:00
Bartłomiej T. Listwon 425ed0ffe0 Add missing WIN32_LEAN_AND_MEAN 2021-09-23 10:35:00 +02:00
bruvzg 1fd3d6c15f Bitmap Font: Remove deprecated vertical kerning callback. 2021-09-22 18:09:50 +03:00
Rémi Verschelde 8afa14e9b7
Merge pull request #51104 from bruvzg/improve_invalid_non_graph_char_detection 2021-09-22 14:07:25 +02:00
Rémi Verschelde a09547450a
Merge pull request #52934 from akien-mga/etcpak-7c3cb6f
etcpak: Update to upstream commit 7c3cb6f (Jul 29, 2021)
2021-09-22 13:48:16 +02:00
bruvzg a58a7cdc9f Improve invalid non-graphic glyph detection. 2021-09-22 14:37:16 +03:00
Rémi Verschelde 3691cb0ca4
etcpak: Update to upstream commit 7c3cb6f (Jul 29, 2021)
Adds a new `useHeuristics` compression mode for ETC2.
Upstream defaults to enable it so we do the same.
2021-09-22 13:17:07 +02:00
Rémi Verschelde fd641ac85c
Vulkan: Update volk and Vulkan SDK components to 1.2.190 2021-09-22 12:56:15 +02:00
Rémi Verschelde ba57252bd8
Merge pull request #52878 from AnilBK/add-get-center 2021-09-21 21:30:30 +02:00
Rémi Verschelde 679f70c1e1
Merge pull request #52906 from vnen/gdscript-show-error-on-yield 2021-09-21 20:36:39 +02:00
Rémi Verschelde b3b4860d2e
Merge pull request #52905 from vnen/gdscript-single-line-declaration 2021-09-21 20:35:36 +02:00
George Marques 262d6c6bef
GDScript: Show specific error when "yield" is used
To help people porting code, it gives a hint to use "await" instead of a
generic error.
2021-09-21 14:38:14 -03:00
George Marques e5ebc9710d
GDScript: Allow classes declaration to be done in single line
Incidentally, allow multiple statements in single line functions when
using semicolon as a terminator.
2021-09-21 14:14:46 -03:00
George Marques bab0afc821
GDScript: Allow multiple lines in signal parameters declaration 2021-09-21 13:40:39 -03:00
Rémi Verschelde db028ac700
Merge pull request #52898 from vnen/gdscript-assigment-conversion-fix
GDScript: Remove conversion assign mistakenly done when unneeded
2021-09-21 17:43:11 +02:00
Anilforextra 90908cd67d Add Get Center Method for Rect2/Rect2i and AABB. 2021-09-21 21:14:17 +05:45
Rémi Verschelde 61ce8b206e
Merge pull request #52877 from Calinou/add-print-verbose
Add `print_verbose()` built-in function to print in verbose mode only
2021-09-21 17:00:58 +02:00
George Marques 5107f9190b
GDScript: Remove conversion assign mistakenly done when unneeded 2021-09-21 11:58:57 -03:00
Hugo Locurcio 650b1db4b8
Add `print_verbose()` built-in function to print in verbose mode only
This can be used as a shorthand for:

    if OS.is_stdout_verbose():
        print("...")

Unlike `print_debug()`, this works in release builds too and can
be toggled off in debug builds.
2021-09-21 15:59:49 +02:00
Yuri Roubinsky 26e3b3908d
Merge pull request #52852 from Chaosus/gds_fix_constants
Prevent local constant default value from incorrect overriding by a global constant in GDScript autocompletion
2021-09-21 16:44:46 +03:00
Rémi Verschelde b458feba24
Merge pull request #51655 from RevoluPowered/improve-gdscript-code-editor-performance
Improve GDScript Editor performance
2021-09-21 15:18:17 +02:00
Bastiaan Olij c527078634 Change to using doubles in XR classes 2021-09-21 22:46:31 +10:00
Rémi Verschelde 82c12060b2
Merge pull request #52718 from Calinou/gdscript-add-integration-tests-2 2021-09-21 14:13:24 +02:00
Gordon MacPherson 1881b3adc5
Improve GDScript Editor and Improve latency
Improvements:
- GDScript Highlighter is faster by 25% as keys are smaller (hashes instead of strings)
- Removes message queue from _apply_settings_change to allow resize to work correctly
- Some performance fixes are pending still

Note: this resolves the code editor behaving badly when resizing in debug builds
2021-09-21 13:56:47 +02:00
bruvzg c931906af7 Add flag to connected grapheme. Apply RTL displacement FX only to the whole connected grapheme. Pass more glyph info to the custom RTL FX. 2021-09-21 13:51:38 +03:00
Yuri Roubinsky 05331a5bb9 Prevent local constant default value from incorrect override by a global 2021-09-21 08:40:50 +03:00
Aaron Franke d54f2ad7ca
Don't generate empty doc sections and reduce code duplication 2021-09-20 20:59:33 -05:00
Rémi Verschelde a92c58ed3e
Merge pull request #52330 from johnjdonna/add_support_hostname_language_server
LSP: Add support for custom host setting
2021-09-20 13:53:34 +02:00
Rémi Verschelde 65e91798a5
Merge pull request #52856 from e8newallm/52816
Corrected GLTFDocument::save_scene from processing a nullptr
2021-09-20 13:22:11 +02:00
Matthew Newall ca55dfc00c Corrected GLTFDocument::save_scene from processing a nullptr
Co-authored-by: Rémi Verschelde <rverschelde@gmail.com>
2021-09-20 11:38:39 +00:00
Rémi Verschelde b1dafd9c16
Merge pull request #52618 from williamd67/GPULightmapper-bounce-improvement
GPULightmapper exclude back-face triangles while calculating bounces
2021-09-20 13:21:16 +02:00
Rémi Verschelde 62aed73d88
Merge pull request #52545 from JFonS/occ_fixes
Occlusion culling fixes
2021-09-20 13:20:03 +02:00
John J. Donna II be6da39b8a
LSP: Add support for custom host setting
You can now configure host in the `language_server` settings in the editor
settings.
2021-09-20 13:09:51 +02:00
bruvzg 3061e3859d HarfBuzz: Update to version 3.0.0 2021-09-20 09:52:45 +03:00
Aaron Franke 388732bc19
Fix some minor issues in C# XML doc comments 2021-09-18 11:38:22 -05:00
Rémi Verschelde c77e1e2852
Merge pull request #52666 from magian1127/temp1 2021-09-18 15:02:02 +02:00
Magian 9932fbfb1e C#, replace the current Xform method with a * operator. 2021-09-18 20:36:15 +08:00
Yuri Roubinsky dfae75d0c5 Fix incorrect call of `_center_on_node` in VisualScript editor 2021-09-18 10:58:28 +03:00
Rémi Verschelde ae3b26da7b
GDScript: Remove reference to remove `@export_exp_range`
It was removed in 75688772b3 to be replaced
by `@export_range` with an `"exp"` hint string.
2021-09-17 22:54:43 +02:00
Rémi Verschelde 424ddcba37
Merge pull request #52792 from vnen/gdscript-subscript-missing-index 2021-09-17 20:16:29 +02:00
Rémi Verschelde 7762e8b1c1
Merge pull request #52788 from vnen/gdscript-compare-with-null 2021-09-17 19:35:55 +02:00
George Marques 651319de11
GDScript: Properly catch error when missing index in subscript 2021-09-17 14:31:51 -03:00
George Marques 455e142d37
Allow comparing equality between builtin types and null 2021-09-17 12:33:52 -03:00
George Marques b8fdeb6467
Merge pull request #51671 from RandomShaper/fix_gdscript_crash
Fix some GDScript bugs
2021-09-17 12:29:40 -03:00
Rémi Verschelde 4d61cb9c35
Merge pull request #52785 from vnen/gdscript-fix-inference-eagerness 2021-09-17 17:20:33 +02:00
George Marques 4e69341c01
GDScript: Avoid inferred types from giving hard errors 2021-09-17 11:52:30 -03:00