Commit Graph

6934 Commits

Author SHA1 Message Date
mj.Jernigan a413656e07 Register missing WebRTCDataChannelJS type 2022-07-03 01:21:17 +02:00
Rémi Verschelde 6bbfd160b0 SCons: Properly track codegen script dependency for generated GLSL headers 2022-07-02 16:01:48 +02:00
MinusKube 92367bad4e Fix GDScript parser sometimes crashing when issuing warning for unreachable pattern 2022-07-01 02:05:00 +02:00
Silc Renew dc43cfc830 implement bone renamer in importer 2022-07-01 03:55:28 +09:00
Rémi Verschelde b730d2ee09
Merge pull request #60675 from voylin/Add-BBCode-support-for-printing-output
Adding print_rich() for printing with BBCode
2022-06-28 23:35:53 +02:00
Rémi Verschelde f6072c9c98
Merge pull request #62485 from cdemirer/fix-set-chain-jump-if-shared
Fix chain assignment bug with jump_if_shared
2022-06-28 19:13:35 +02:00
cdemirer a0608bd891 Fix set chain bug with jump_if_shared 2022-06-28 18:45:27 +03:00
Voylin c6291bcd8a Adding print_rich for printing with BBCode 2022-06-29 00:41:29 +09:00
Rémi Verschelde 622b656c40
Merge pull request #53135 from briansemrau/fix-ref-leak 2022-06-28 17:26:44 +02:00
Rémi Verschelde 4c14bf7482
Merge pull request #62470 from vnen/gdscript-export-nodes
GDScript: Enable exporting nodes to the inspector
2022-06-28 08:07:00 +02:00
Rémi Verschelde b863c40356
Merge pull request #62468 from V-Sekai/core-const-expressions
Add a const call mode to Object, Variant and Script.
2022-06-28 01:08:24 +02:00
George Marques 9490146a16
GDScript: Enable exporting nodes to the inspector
Also fix an small issue in the property editor for NodePath trying to
use the meta property when not needed.
2022-06-27 18:42:52 -03:00
Rémi Verschelde c4a426d6ec
Merge pull request #62462 from vnen/gdscript-setter-chaining
GDScript: Fix setter being called in chains for shared types
2022-06-27 23:25:53 +02:00
K. S. Ernest (iFire) Lee 9ddebc0c22 Add a const call mode to Object, Variant and Script.
For this to work safely (user not call queue_free or something in the expression), a const call mode was added to Object and Variant (and optionally Script).

This mode ensures only const functions can be called, making it safe to use from the editor.

Co-Authored-By: reduz <reduzio@gmail.com>
2022-06-27 13:33:06 -07:00
George Marques 511a4b761c
GDScript: Fix setter being called in chains for shared types
When a type is shared (i.e. passed by reference) it doesn't need to be
called in a setter chain (e.g. `a.b.c = 0`) since it will be updated in
place.

This commit adds an instruction that jumps when the value is shared so
it can be used to skip those cases and avoid redundant calls of setters.
It also solves issues when assigning to sub-properties of read-only
properties.
2022-06-27 12:09:51 -03:00
Bastiaan Olij ecfcfd97fa Split dependency logic
Split FOG
Split visibility notifier
Final cleanup of storage classes
2022-06-28 00:10:29 +10:00
Rémi Verschelde b192073001
Merge pull request #62309 from reduz/remake-resource-thread-safety
Remake ResourceCache thread safety code and API
2022-06-25 14:09:28 +02:00
Rémi Verschelde dd3de622d8
Merge pull request #62372 from MarcusElg/nosliderrename
Rename @export_range's noslider option to no_slider
2022-06-25 14:03:44 +02:00
Rémi Verschelde 56b8d579b2
Merge pull request #62255 from vnen/gdscript-implicit-onready
GDScript: Use implicit method for @onready variables
2022-06-24 23:24:33 +02:00
George Marques cf015673d3
GDScript: Use implicit method for @onready variables
Initialize them with the implicit method so they're not related to the
overriding of the `_ready` method of the script but instead are always
set.
2022-06-24 14:49:21 -03:00
George Marques 81cac4907f
GDScript: Don't add implicit constructor to the list of functions
So it's not shown on docs or when listing the methods. This also avoids
being able to call it using the `call()` function.
2022-06-24 14:48:46 -03:00
Priyansh Rathi e995764e50
add support for soft shadows to the lightmapper 2022-06-24 21:50:13 +05:30
Rémi Verschelde fec3a48e53
Merge pull request #59918 from piiertho/enhancement/rename-controll-minimum_size-to-custom_minimum_size 2022-06-24 14:54:53 +02:00
Marcus Elg 6c1ac9f3be Rename export_range's noslider option to no_slider 2022-06-24 10:45:34 +02:00
Rémi Verschelde faae24637c
Merge pull request #62300 from smix8/navigation_map_force_update_4.x 2022-06-24 10:13:07 +02:00
Rémi Verschelde 81afea620f
Merge pull request #62353 from smix8/navigation_region_owns_point_4.x
Add NavigationServer region_owns_point() helper function
2022-06-24 09:08:25 +02:00
Rémi Verschelde ecf187705e
Merge pull request #62238 from V-Sekai/openexr-buffer
For in-engine processing allow saving openexr to a buffer.
2022-06-24 00:12:16 +02:00
smix8 e57360d8df Add NavigationServer.region_owns_point() helper function
Adds a helper function to check if a world space position is currently owned by a navigation region.
2022-06-23 23:32:05 +02:00
Rémi Verschelde 471050e6a7
Merge pull request #62342 from reduz/methodinfo-varargs
Implement varargs in Methodinfo
2022-06-23 22:49:16 +02:00
Rémi Verschelde 6a5267ebb2
Merge pull request #62352 from akien-mga/mono-newtonsoft.json-13.0.1
Mono: Update Newtonsoft.Json to 13.0.1
2022-06-23 22:43:22 +02:00
Pierre-Thomas Meisels 5ad1a1b5e7 enhancement: rename exposed property Control::minimum_size to Control::custom_minimum_size 2022-06-23 18:06:10 +02:00
K. S. Ernest (iFire) Lee ce42ee790c For in-engine processing allow saving openexr to a buffer. 2022-06-23 08:53:15 -07:00
smix8 fdea269805 Add NavigationServer map_force_update() function
Adds map_force_update() function to NavigationServer. This function immediately flushes the Navigationserver command queue and recalculates all navigationmeshes and region connections for a specific map.
2022-06-23 17:32:07 +02:00
Rémi Verschelde 870c02143b Mono: Update Newtonsoft.Json to 13.0.1
See https://github.com/advisories/GHSA-5crp-9r3c-p9vr
2022-06-23 16:24:16 +02:00
Rémi Verschelde 462127eff0
Merge pull request #62312 from smix8/navigation_get_maps_4.x 2022-06-23 16:14:12 +02:00
Rémi Verschelde bdd41a836c
Merge pull request #62293 from smix8/navigation_disable_editorprogress_bake_4.x 2022-06-23 16:13:12 +02:00
Rémi Verschelde ef5bc1baad
Merge pull request #62348 from smix8/navigation_baking_aabb_4.x 2022-06-23 16:10:40 +02:00
smix8 0c4d99f4fd Implement NavigationMesh bake area
Adds two new properties to NavigationMesh resources to restrict the navmesh baking to an area enclosed by an AABB with volume.
2022-06-23 14:55:21 +02:00
reduz dd8c0522a6 Implement varargs in Methodinfo
Variadic templates are an awful thing. Implements #62233 using them in MethodInfo so less changes are required.
2022-06-23 14:50:38 +02:00
Rémi Verschelde e3fb066cb0
Merge pull request #62317 from Black-Cat/release-return-fix 2022-06-23 14:37:33 +02:00
Rémi Verschelde d1dac8427a
Merge pull request #55846 from ellenhp/fix_ogg_edge_cases
Fix ogg edge cases
2022-06-22 23:33:51 +02:00
Black Cat 5c365713ca Do not reset return value in release build 2022-06-22 20:55:09 +04:00
smix8 c0fed1d4e8 Add Navigation function to get all navigation maps
Added new function that returns all created navigation map RIDs from the NavigationServer. The function returns both 2D and 3D created navigation maps as technically there is no distinction between them.
2022-06-22 15:33:40 +02:00
reduz e772b65d92 Remake resource thread safety and API
* Ensures thread safety when resources are destroyed.
* Simplified API by always forcing `ResourceCache::get_ref`, which needs less hacks and is fully thread safe.
* Removed RWLock for resources because its not possible to use for the new logic. Should not be a problem.

Supersedes #57533
2022-06-22 13:46:46 +02:00
smix8 24bb0af4a9 Disable thread-unsafe EditorProgress for navmesh baking
Disables navmesh baking EditorProgress for now until fixed as EditorProgress is not thread-safe and uses hacks and Main::iteration() for steps which can result in random crashes when baking navmesh.
2022-06-22 10:47:00 +02:00
Aaron Franke 8f05bd97b5
Add support for saving WebP images 2022-06-21 08:27:51 -05:00
Rémi Verschelde 40c360b870
Merge pull request #62122 from reduz/implement-movie-writer
Implement a Movie Maker mode
2022-06-21 14:24:14 +02:00
reduz 5786516d4d Implement Running Godot as Movie Writer
* Allows running the game in "movie writer" mode.
* It ensures entirely stable framerate, so your run can be saved stable and with proper sound (which is impossible if your CPU/GPU can't sustain doing this in real-time).
* If disabling vsync, it can save movies faster than the game is run, but if you want to control the interaction it can get difficult.
* Implements a simple, default MJPEG writer.

This new features has two main use cases, which have high demand:
* Saving game videos in high quality and ensuring the frame rate is *completely* stable, always.
* Using Godot as a tool to make movies and animations (which is ideal if you want interaction, or creating them procedurally. No other software is as good for this).

**Note**: This feature **IS NOT** for capturing real-time footage. Use something like OBS, SimpleScreenRecorder or FRAPS to achieve that, as they do a much better job at intercepting the compositor than Godot can probably do using Vulkan or OpenGL natively. If your game runs near real-time when capturing, you can still use this feature but it will play no sound (sound will be saved directly).

Usage:

$ godot --write-movie movie.avi [scene_file.tscn]

Missing:

* Options for configuring video writing via GLOBAL_DEF
* UI Menu for launching with this mode from the editor.
* Add to list of command line options.
* Add a feature tag to override configurations when movie writing (fantastic for saving videos with highest quality settings).
2022-06-21 11:28:47 +02:00
Rémi Verschelde 21b0c7fc22
Merge pull request #62214 from smix8/navigation_layer_bitmask_helpers_4.x 2022-06-20 15:13:33 +02:00
Rémi Verschelde 77be20ede8
Merge pull request #58921 from BastiaanOlij/htc_vive_trackers 2022-06-20 14:17:30 +02:00
reduz 141c375581 Clean up Hash Functions
Clean up and do fixes to hash functions and newly introduced murmur3 hashes in #61934
* Clean up usage of murmur3
* Fixed usages of binary murmur3 on floats (this is invalid)
* Changed DJB2 to use xor (which seems to be better)
2022-06-20 12:54:19 +02:00
Marcus Elg 46bbbd9770 Allow autocompletion of "noslider" in export_range 2022-06-19 17:11:49 +02:00
smix8 55923ade68 Add navigation layer bitmask helper functions
Adds helper functions to work with the navigation layer bitmask.
2022-06-19 13:47:19 +02:00
Rémi Verschelde dd93ae63fa
Merge pull request #61991 from bruvzg/property_shortcut
Make enum/constant binds 64-bit.
2022-06-17 21:05:51 +02:00
Rémi Verschelde c8e17b5a30
Merge pull request #62069 from iamjsk10/master
Typo: Changed "forech" into "foreach" in string_utils.cpp
2022-06-17 18:36:08 +02:00
bruvzg 860e24683f
Make enum/constant binds 64-bit. 2022-06-17 16:36:26 +03:00
iamjsk10 d3a839f4b1 Mono: Fix typo to `foreach` C# keyword 2022-06-17 13:03:32 +02:00
Rémi Verschelde 78944fef82
Merge pull request #61510 from Calinou/script-tweak-stack-overflow-message 2022-06-17 13:03:05 +02:00
Rémi Verschelde 4df25f23f8
Merge pull request #62114 from raulsntos/EditorScenePostImport_templates
Fix EditorScenePostImport templates for C#
2022-06-16 19:58:14 +02:00
Raul Santos 525b5e0e16
Fix EditorScenePostImport templates for C# 2022-06-16 19:29:59 +02:00
bruvzg b5c96df277
Move duplicate AutoWrap, Overrun and VisibleChar behavior enums to the TextServer. 2022-06-16 16:49:37 +03:00
Rémi Verschelde ef6511fbb4
Merge pull request #62104 from paulloz/dotnet-lerp-rangelerp 2022-06-16 14:32:28 +02:00
Paul Joannon ee95a1cb28
Fix Lerp documentation and implement RangeLerp 2022-06-16 13:56:32 +02:00
K. S. Ernest (iFire) Lee 67052af918 Print NavMap error only once for invalid NavMesh. 2022-06-16 13:56:16 +02:00
Bastiaan Olij 95f75b232f Adding HTC tracker support 2022-06-16 16:52:13 +10:00
Rémi Verschelde d82c227e2b
Merge pull request #61486 from jtnicholl/import_script_templates
Add script templates for EditorScenePostImport
2022-06-15 21:07:42 +02:00
Jonathan Nicholl 912d8e23ca Add script templates for EditorScenePostImport 2022-06-15 12:41:37 -04:00
Yuri Rubinsky c9ad370f20 Add a null checking to `GDScript::_super_implicit_constructor` 2022-06-15 17:28:40 +03:00
Hugo Locurcio cceeb671db
Improve stack overflow error message in GDScript and VisualScript
Stack overflow errors are generally the result of infinite recursion
within a script.
2022-06-15 16:20:01 +02:00
George Marques 68b86220c8
Merge pull request #57513 from trollodel/gdscript_get_propertyinfo_classname
Allow setting the PropertyInfo class_name from GDScript custom properties
2022-06-15 10:48:01 -03:00
George Marques 1aa6e33bf5
Merge pull request #59358 from strank/debug-inner-classes 2022-06-15 10:37:18 -03:00
Rémi Verschelde 9839761e24
Merge pull request #59482 from kurtlachmann/lsp_better_parentheses 2022-06-15 15:31:35 +02:00
George Marques 67156aa4c2
Merge pull request #61666 from nathanfranke/fix-match-bind
gdscript: use correct error for unused bind match, suppress with underscore
2022-06-15 10:21:34 -03:00
Rémi Verschelde 36ff7292bc
Merge pull request #62033 from V-Sekai/openxr-angular-velocity
Expose XRPose's get angular velocity.
2022-06-15 07:41:58 +02:00
Rémi Verschelde 632b933a03
Merge pull request #61934 from Geometror/hashfuncs
Hash function improvements
2022-06-15 07:34:43 +02:00
George Marques 15740c37a3
Merge pull request #57151 from cdemirer/fix-match-array-dict-pattern-logic-error
Fix logic errors in match-statement Array & Dictionary patterns
2022-06-14 21:30:05 -03:00
Hendrik Brucker 8c61470fa9 Hash function improvements 2022-06-15 00:32:10 +02:00
smix8 245da150e7 Streamline Navigation layer function names.
Streamline Navigation layer function names.
2022-06-15 00:18:48 +02:00
K. S. Ernest (iFire) Lee 10131eb6f2 Expose XRPose's get angular velocity. 2022-06-14 07:33:22 -07:00
Rémi Verschelde becfe93092
Merge pull request #62025 from smix8/navigation_cb_invalid_obj_4.x 2022-06-14 15:25:11 +02:00
smix8 bc38ebe4f0 Fix crash of navigation agents callback when object is invalid
Fix crash of navigation agents callback when object is invalid.
2022-06-14 13:04:02 +02:00
Rémi Verschelde 133d29102a
Merge pull request #61839 from Faless/webrtc/4.x_extension_static_default 2022-06-13 17:19:17 +02:00
Rémi Verschelde 136f84fc35
Merge pull request #61772 from bruvzg/ft_ot_collect 2022-06-13 11:13:05 +02:00
bruvzg b667469bbf
[TextServer] Add missing font mutex lock. 2022-06-13 10:33:36 +03:00
strank 2079e19899 Extend test_compiler to also disassemble inner classes 2022-06-12 16:30:04 -04:00
Rémi Verschelde 296c8b74f2
Merge pull request #60128 from jiq4449/master
Added documentation comments to the .NET library
2022-06-12 12:49:33 +02:00
Joshua Quinones 003ad31ed5
Added documentation comments to the .NET library
Comments have been added for the following:
modules/mono/glue/GodotSharp/GodotSharp/Core/GodotTaskScheduler.cs
modules/mono/glue/GodotSharp/GodotSharp/Core/GodotSynchronizationContext.cs
modules/mono/glue/GodotSharp/GodotSharp/Core/Attributes/AssemblyHasScriptsAttribute.cs
modules/mono/glue/GodotSharp/GodotSharp/Core/Attributes/DisableGodotGeneratorsAttribute.cs
modules/mono/glue/GodotSharp/GodotSharp/Core/Attributes/ExportAttribute.cs
modules/mono/glue/GodotSharp/GodotSharp/Core/Attributes/GodotMethodAttribute.cs
modules/mono/glue/GodotSharp/GodotSharp/Core/Attributes/ScriptPathAttribute.cs
2022-06-11 21:37:40 -05:00
FireForge 4678736a39 Add suffixes to all nodes and resources 2022-06-11 09:41:05 -05:00
Fabio Alessandrelli 31d7e22466 [WebRTC] Static extension registration. 2022-06-09 07:19:00 +02:00
Rémi Verschelde 4e3b0e176b
Merge pull request #61682 from smix8/navigation_bake_config_precision_4.x 2022-06-08 16:06:00 +02:00
Rémi Verschelde e4994e2817
Merge pull request #61739 from smix8/navigation_region_cost_4.x 2022-06-08 16:05:38 +02:00
Rémi Verschelde 07029e94f4
Merge pull request #61662 from smix8/navigation_map_cell_defaults_4.x 2022-06-08 15:56:22 +02:00
Rémi Verschelde 7e6f26c582
Merge pull request #61800 from smix8/navigation_gridmap_transform_debug_4.x 2022-06-08 15:40:09 +02:00
smix8 cb8d95c271 Fix GridMap Navigation transforms and debug
Fix GridMap navigation transforms and debug.
2022-06-08 14:19:16 +02:00
Rémi Verschelde c8ce7e34e2 i18n: Misc fixes translation strings
Adds some translator comments to solve some questions raised on Weblate.
2022-06-08 12:57:54 +02:00
Rémi Verschelde 43f05bd6a0
Merge pull request #61797 from smix8/navigation_gridmap_region_xform_4.x
Fix GridMap applying wrong NavigationRegion transform
2022-06-08 07:25:09 +02:00
smix8 cc0b525300 Fix GridMap applying wrong NavigationRegion transform
Fix GridMap applying wrong NavigationRegion transform.
2022-06-08 03:30:19 +02:00
Rémi Verschelde b33660228b
Merge pull request #61784 from Geometror/visualeditors_editorsettings_propagation
Fix visual editor settings change propagation
2022-06-07 21:03:13 +02:00
Hendrik Brucker e4ba3b64f0 Fix visual editor settings change propagation 2022-06-07 19:17:47 +02:00
bruvzg 6e4cdad3ac
[TextServer] Adds support for TrueType / OpenType collection files (*.TTC, *.OTC). 2022-06-07 11:35:59 +03:00