Commit Graph

7695 Commits

Author SHA1 Message Date
TechnoPorg 2904d19069 Make EditorResourceConversionPlugin usable.
Previously, EditorResourceConversionPlugin nominally existed in scripting, but there was no way for a user to actually register one.
This PR adds methods to EditorPlugin for registering/unregistering EditorResourceConversionPlugins.
Additionally, it documents EditorResourceConversionPlugin with descriptions and a basic example.
2023-01-14 18:48:11 -07:00
Yuri Sizov 4c1f11944e Update all outdated online documentation links 2023-01-14 19:38:00 +03:00
Juan Linietsky 1aaff63b8f Fixes to JSON as resource
* It was not a resource, hence it was not working to load it as such.
* Changed so, when opened in editor, a parse error will not fail load and the text will be kept.
* This should allow proper editing from within the code editor, including syntax checking and saving files as-is in text.

Partially addresses #66820.

The code editor still needs to be changed for this to work.
2023-01-14 14:41:51 +01:00
Anthony Cossins ddab3976fe Uppercase references to color constants in documentation 2023-01-13 22:56:22 +00:00
Rémi Verschelde ae66a4b301
Merge pull request #71235 from Calinou/doc-shader-per-instance-uniforms
Clarify the difference between uniforms and per-instance uniforms in docs
2023-01-13 22:34:50 +01:00
Rémi Verschelde 030a95dd61
Merge pull request #71137 from lyuma/remove_modification_stack_3d
Remove SkeletonModificationStack3D, and Skeleton3D api cleanup
2023-01-13 22:34:09 +01:00
Yuri Sizov 682ef35787
Merge pull request #71328 from reduz/button-shortcuts-no-longer-press
Button shortcuts no longer "press" the Button.
2023-01-14 00:14:51 +03:00
Hugo Locurcio 2841047657
Clarify the difference between uniforms and per-instance uniforms in docs 2023-01-13 21:48:06 +01:00
Yuri Sizov 4c5e09f96a
Merge pull request #71339 from raulsntos/dotnet/is_finite
Add `IsFinite` to C# Variants
2023-01-13 23:34:51 +03:00
Yuri Sizov bdb3543c2a
Merge pull request #71343 from raulsntos/dotnet/is_zero_approx
Add `IsZeroApprox` to C# vectors
2023-01-13 23:31:24 +03:00
Raul Santos 14c16746f3
Add `IsZeroApprox` to C# vectors 2023-01-13 18:53:39 +01:00
Juan Linietsky dd3a1b08a9 Button shortcuts no longer "press" the Button.
* Button shortcuts were treated as generic input events on buttons. This means that to activate a button shortcut you had to press and release.
* This logic is removed and now shortcuts always activate on press.
* This makes the editor feel more responsive and solves problems related to this behavior.

Fixes #45033 and possibly others.
2023-01-13 18:43:02 +01:00
Raul Santos f852004cf5
Add `IsFinite` to C# Variants 2023-01-13 17:57:52 +01:00
Hendrik Brucker e59d6b1b8c [RichTextLabel] Match minimum size calculation of Label
(optional via fit_content property)
2023-01-13 15:17:26 +01:00
Juan Linietsky 6f0e210093 Refactor ProjectSetting overrides
* Overrides no longer happen for set/get.
* They must be checked with a new function: `ProjectSettings::get_setting_with_override()`.
* GLOBAL_DEF/GLOBAL_GET updated to use this

This change solves many problems:
* General confusion about getting the actual or overriden setting.
* Feature tags available after settings are loaded were being ignored, they are now considered.
* Hacks required for the Project Settings editor to work.

Fixes #64100. Fixes #64014. Fixes #61908.
2023-01-13 15:13:56 +01:00
bruvzg 9b2843f14f
Improve dashed line alignment and make it optional. 2023-01-13 10:30:12 +02:00
Rémi Verschelde 05e1517c8e
Merge pull request #71290 from clayjohn/normal-map-2d
Remove normal_map from MeshInstance2D and MultiMeshInstance2D
2023-01-13 00:17:28 +01:00
Clay John 21893140eb
Merge pull request #71289 from RandomShaper/avoid_color_flash
Avoid color flash on window creation and resizing
2023-01-12 14:39:41 -08:00
clayjohn b514e20fb5 Remove normal_map from MeshInstance2D and MultiMeshInstance2D 2023-01-12 13:15:31 -08:00
Pedro J. Estébanez d0e37cd04c Add framework for avoidance of color flash in new windows 2023-01-12 21:42:51 +01:00
Lyuma fd25bb50ab Remove SkeletonModificationStack3D, and Skeleton3D api cleanup
Removes all 3D modification resources. SkeletonIK3D is a node and still supported.
Remove deprecated Skeleton3D functionality for 4.0, so we can add it back in 4.x.
Remove local_pose_override feature from Skeleton3D and BoneAttachment3D.
Expose Skeleton3D::get_version() so IK scripts/extensions can cache bones.

Note: This change only affects 3D. SkeletonModification2D will work as before.
2023-01-12 12:04:53 -08:00
Rémi Verschelde 797fb296f0
Merge pull request #58517 from KoBeWi/size_matters
Add expand modes to TextureRect
2023-01-12 20:06:26 +01:00
Rémi Verschelde 9332d17c87
Merge pull request #71258 from TechnoPorg/doc-editor-export-platform
Document EditorExportPlatform
2023-01-12 17:54:59 +01:00
kobewi dfc4367a47 Add expand modes to TextureRect 2023-01-12 17:06:03 +01:00
Rémi Verschelde 2b0d03bbea
Merge pull request #71270 from Miltage/update-timer-docs
Improve clarity surrounding Timer's time_left variable
2023-01-12 15:01:26 +01:00
Rémi Verschelde a8a9892ad6
Merge pull request #71218 from KoBeWi/unlimited_bikeshedding_lets_go
Split pause() from AnimationPlayer's stop()
2023-01-12 14:30:46 +01:00
Yuri Rubinsky 5b627dec72
Merge pull request #71123 from Chaosus/vs_particle_randomness 2023-01-12 16:29:27 +03:00
Robert Shenton 39d7e984d4 Improve clarity surrounding Timer's time_left variable 2023-01-12 15:10:06 +02:00
Rémi Verschelde a5dedfe260
Merge pull request #70731 from smix8/navigationserver_performance_monitor_4.x
Add NavigationServer Performance Monitor
2023-01-12 10:36:18 +01:00
Danil Alexeev 8f706be6fa
Rearrange `editor/naming/*` project settings 2023-01-12 11:41:13 +03:00
Rémi Verschelde 0e4e782ada
Merge pull request #70714 from Calinou/doc-os-stdin
Improve documentation for `OS.read_string_from_stdin()`
2023-01-12 09:24:47 +01:00
Rémi Verschelde 7f3f559e6b
Merge pull request #71250 from smix8/navigation_tweak_agent2d_4.x
Tweak NavigationAgent2D defaults
2023-01-12 08:52:56 +01:00
TechnoPorg 671f2aca29 Document EditorExportPlatform
This class exposes no functionality to scripting itself, but is used by EditorExportPlugins.
Internally, it is what does the actual exporting of projects.
2023-01-11 20:16:42 -07:00
Hendrik Brucker 62278eb236 Rename (de)selected signals to node_(de)selected in GraphNode 2023-01-12 04:08:06 +01:00
smix8 594ffd2200 Tweak NavigationAgent2D defaults
Tweaks default values for NavigationAgent2D to work better out of the box within a new 2D project using default resolution.
2023-01-11 23:47:16 +01:00
Hugo Locurcio 86b8176864
Improve documentation for `OS.read_string_from_stdin()`
This makes it clearer that calls to this method are blocking.

The unused method parameter was also removed.
2023-01-11 19:57:25 +01:00
Yuri Sizov 2ac2db8de5
Merge pull request #71203 from smix8/nav_tutorial_class_doc_links_4.x
Add navigation tutorial links inside class doc
2023-01-11 16:31:03 +03:00
kobewi da9396881e Split pause() from AnimationPlayer's stop() 2023-01-11 14:03:31 +01:00
Rémi Verschelde 9c02bf1b11
Merge pull request #70707 from mihe/bind-physics-exclude
Bind methods related to physics query exclusions
2023-01-11 10:36:53 +01:00
Rémi Verschelde ff4d5e0a68
Merge pull request #71060 from ItsAleph/docs/improve-iea
docs: Improve `InputEventAction` reference
2023-01-11 09:48:47 +01:00
Rémi Verschelde baae87e307
Merge pull request #71105 from reduz/unload-current-scene
Add SceneTree.unload_current_scene()
2023-01-11 09:46:33 +01:00
smix8 7506ecc5d9 Add navigation tutorial links inside class doc
Adds navigation tutorial links inside the class doc to the related and more detailed godot-docs pages.
2023-01-11 08:55:02 +01:00
Rémi Verschelde cbe3841a43
Merge pull request #69724 from KoBeWi/VS100
Document all VisualShader nodes
2023-01-11 01:28:55 +01:00
Rémi Verschelde 5c6158fdfd
Merge pull request #71157 from reduz/fix-callable-get-bound-arguments
Fix Callable call error reporting.
2023-01-11 01:15:39 +01:00
Rémi Verschelde 54688a7535
Merge pull request #71127 from reduz/drag-forward-to-callables
Change set_drag_forwarding() to use callables.
2023-01-11 01:14:58 +01:00
Ricardo Buring 3efa105548 Add get_contact_impulse method to PhysicsDirectBodyState2D
This makes it consistent with 3D.
2023-01-10 23:28:02 +01:00
kobewi f12abece27 Document all VisualShader nodes 2023-01-10 22:33:58 +01:00
weerdy15 5aadb1273b
docs: Improve `InputEventAction` reference
Co-authored-by: Rémi Verschelde <rverschelde@gmail.com>
2023-01-10 18:21:03 +01:00
Juan Linietsky e6a4debede Change set_drag_forwarding() to use callables.
* This solution is much cleaner than the one in 3.x thanks to the use of callables.
* Works without issues in any language (no need to worry about camel or snake case).
* Editor code uses a compatibility function (too much work to redo).

Fixes #59899
2023-01-10 14:09:24 +01:00
Juan Linietsky e5f2c442c7 Add SceneTree.unload_current_scene()
Provides an obvious way to unload the currently loaded scene (which is nowhere to be found in the docs).
The SceneTree.change_scene_to() method must now always provide a valid PackedScene.

Fixes #63565.
2023-01-10 14:02:06 +01:00
Juan Linietsky 33d3b7eea7 Fix Callable call error reporting.
* Fix potential crash when using bind in `Variant::get_callable_error_text()`
* Properly compute bound arguments so they can be properly shown.
* Add a function to obtain the actual bound arguments.
2023-01-10 13:56:27 +01:00
Rémi Verschelde e3a87641bd
Merge pull request #71147 from bruvzg/get_win
Add Node::get_window() method.
2023-01-10 10:52:12 +01:00
Rémi Verschelde 796690948f
Merge pull request #71022 from Sauermann/fix-captured-position-doc
Fix doc for position of captured mouse
2023-01-10 10:48:58 +01:00
Rémi Verschelde 2d2902b49b
Merge pull request #70745 from rcorre/array_dup_doc
Explain that Array.duplicate will not deep-copy Object.
2023-01-10 10:45:30 +01:00
Rémi Verschelde e63500344f
Merge pull request #71056 from marzecdawid/add-tree-deselect-all-to-gdscript
Expose Tree::deselect_all to GDScript
2023-01-10 10:44:31 +01:00
Markus Sauermann 31346211f2 Fix doc for position of captured mouse
The position is not at the center of the screen but of the window.
2023-01-10 10:26:14 +01:00
Danil Alexeev 35bdd8eae4
Improve `SpriteFrames` docs 2023-01-10 12:13:23 +03:00
bruvzg ca8b762797
Add Node::get_window() method. 2023-01-10 11:10:46 +02:00
Rémi Verschelde be4e9dfeab
Merge pull request #69616 from reduz/change-uuid
Ability to change a resource UID from API
2023-01-09 23:08:18 +01:00
Fabio Alessandrelli 6b2abf4605
Merge pull request #70626 from Faless/web/4.x_expose_force_fs_sync
[Web] Expose API to force file system sync.
2023-01-09 21:18:47 +01:00
Juan Linietsky 07a964fce3 Ability to change a resource UID from API
* Works for text, binary and imported resources
* Allows better clean up of duplicate files.

TODO (future PRs):

* Use this API for assigning new UIDs to copied files.
* Use this API for UID conflict on FS scanning (if more than one file has the same UID, the newer one(s) should get assigned a different UID).
2023-01-09 18:52:00 +01:00
Yuri Rubinsky 87eafe48b8 Add few improvements for `VisualShaderNodeParticleRandomness` 2023-01-09 20:33:45 +03:00
Juan Linietsky 0e0a6bb39b
Removed unused property hints and `Object::get_translatable_strings()`
* Remove unused `EditorPropertyMember` and related hints, previouly used by
  VisualScript. Such logic should be implemented in the VS module itself.
* As the above broke compatibility with the VS module, clean up the other
  hacks that were still in core in support of VisualScript.
* `PROPERTY_USAGE_INTERNATIONALIZED` was only used in Object's
  `get_translatable_strings()`, which is a legacy function not used anywhere.
  So both are removed.
* Reordered some usage flags after the above removal to minimize the diff.
* General clean up.

Fixes #30203.

Co-authored-by: Rémi Verschelde <rverschelde@gmail.com>
2023-01-09 16:56:01 +01:00
Danil Alexeev 9b3da76640
Fix unpressable buttons 2023-01-09 12:17:48 +03:00
Rémi Verschelde 6a86dfad29
Fix typos with codespell
Also includes #71080.

Co-authored-by: Psychpsyo <60073468+Psychpsyo@users.noreply.github.com>
2023-01-09 08:39:07 +01:00
Rémi Verschelde 31f94574d4
Merge pull request #70996 from reduz/properly-report-callable-bound-arguments
Properly report Callable bound arguments
2023-01-09 08:34:28 +01:00
Rémi Verschelde e7905f4f48
Merge pull request #71045 from reduz/use-bitfield-in-core-types
Use BitField<> in core type masks
2023-01-09 08:33:26 +01:00
Juan Linietsky 0e0ca01bce Properly report Callable bound arguments
Fixes #63213
Adds a function: Callable::get_amount_of_arguments_bound() to query this in callables. Exposed to the engine API.
2023-01-08 23:35:11 +01:00
smix8 9802914f97 Add NavigationServer Performance Monitor
Adds Performance Monitor for NavigationServer3D.
2023-01-08 22:58:21 +01:00
Rémi Verschelde 378d589e2d
Merge pull request #71037 from reduz/array-format-bitfield
Use BitField<> hint for Mesh.ArrayFormat and Control.SizeFlags
2023-01-08 22:51:03 +01:00
Rémi Verschelde c3c5eceb35
Merge pull request #70463 from DarkKilauea/nav-server-const
[4.x] Rework const on NavigationServer methods
2023-01-08 22:50:05 +01:00
Rémi Verschelde 69fd2f3571
Merge pull request #71064 from DarkMessiah/expose_clear_tabs
Expose TabBar::clear_tabs to GDScript
2023-01-08 22:45:58 +01:00
Rémi Verschelde 1e32a286f3
Merge pull request #70281 from CherrySodaPop/get-impulse-3d
Implement collision impulse in Godot Physics 3D
2023-01-08 22:40:06 +01:00
Juan Linietsky 2b815df3c1 Use BitField<> in core type masks
* All core types masks are now correctly marked as bitfields.
* The enum hacks in MouseButtonMask and many other types are gone. This ensures that binders to other languages non C++ can actually implement type safe bitmasks.
* Most bitmask operations replaced by functions in BitField<>
* Key is still a problem because its enum and mask at the same time. While it kind of works in C++, this most likely can't be implemented safely in other languages and will have to be changed at some point. Mostly left as-is.
* Documentation and API dump updated to reflect bitfields in core types.
2023-01-08 22:17:40 +01:00
Juan Linietsky 47592927b3 Use BitField<> hint for ArrayFormat
This was missing in the conversion of bitflags to BitField<>.
2023-01-08 18:47:48 +01:00
Stanislav Labzyuk 436cd91065 Expose TabBar::clear_tabs to GDScript 2023-01-08 13:52:57 +01:00
Dawid Marzec 9eeed06e65 Expose Tree::deselect_all to GDScript 2023-01-08 12:41:27 +01:00
Lily Garcia 8ee6264cc9 Implement collision impulse in Godot Physics 3D 2023-01-07 22:34:28 -05:00
Josh Jones a0715b30f9 Rework const on NavigationServer methods
`const` is used on all methods, even when they cause modification of the server.  This reworks the methods of the server to only use `const` on method that don't change the state of the server.
2023-01-07 17:29:00 -08:00
Rémi Verschelde d642274f75
Merge pull request #70939 from bruvzg/win_screen_2
Add support for the custom initial screen for the main window, fix primary screen detection.
2023-01-07 13:21:36 +01:00
Rémi Verschelde 3579d7a9f7
Merge pull request #36301 from KoBeWi/daddy_node
Add reparent methods to Node
2023-01-07 13:20:56 +01:00
Rémi Verschelde 41b74c675f
Merge pull request #71000 from reduz/callable-bind-from-array
Allow binding Callable arguments from an array
2023-01-07 13:18:53 +01:00
Rémi Verschelde 0ab91b3d79
Merge pull request #70993 from rcorre/array-erase-doc
Warn against erasing array elements while iterating.
2023-01-07 13:18:16 +01:00
bruvzg 2718a7b7d3
Add support for the custom initial screen for the main window, fix primary screen detection. 2023-01-07 11:14:35 +02:00
Rémi Verschelde bd15c3f80e
Merge pull request #71005 from dazKind/master
CodeEdit: Fix typo 'get_code_comletion_prefixes' -> 'get_code_completion_prefixes'
2023-01-06 22:56:44 +01:00
Rémi Verschelde a12b326fab
Merge pull request #70995 from reduz/do-not-bind-variant-immutable
Unbind Variant methods that change immutable types.
2023-01-06 22:56:20 +01:00
Juan Linietsky d762a0395a Allow binding Callable arguments from an array
Restores 3.x functionality that was removed in the Signal/Callable refactor of 4.0.

Fixes #64668.
Implements https://github.com/godotengine/godot-proposals/issues/6034

Usage:

```GDScript

callable.bindv([arg1,arg2,arg3])

```
2023-01-06 22:37:25 +01:00
Michael Bickel 5d09bf8f05 fix typo 'comleption' -> 'completion' 2023-01-06 19:52:19 +01:00
SaracenOne f5edeb8f58 Disable navmesh, lightmap, and VoxelGI generation on foreign data 2023-01-06 08:39:27 -08:00
Juan Linietsky 576ae694e0 Unbind Variant methods that change immutable types.
Fixes #62706.
Code is commented instead of removed to clarify why they should not be re-added.
2023-01-06 17:17:43 +01:00
Ryan Roden-Corrent 1f6a5e8bb1
Warn against erasing array elements while iterating.
Erasing array elements while iterating does not appear to be safe.
For example, the following prints nothing:

```
var a := [0,1,2,3,4,5,6]
for i in a:
        if i % 2 == 0:
                a.erase(i)
        else:
                print(i)
```

While this is often true for array implementations, it still seems worth
documenting explicitly. I copied the wording from Dictionary.xml.
2023-01-06 08:21:01 -05:00
Yuri Rubinsky f101add78b Add `uint` type support to visual shaders 2023-01-06 10:35:25 +03:00
Yuri Sizov 82c00c21e6 Simplify some editor plugin logic and remove dead code 2023-01-05 21:04:54 +03:00
Rémi Verschelde 798582acf0
Merge pull request #65609 from dalexeev/animated-sprite
`AnimatedSprite{2D,3D}` improvements
2023-01-05 15:00:31 +01:00
Rémi Verschelde d95794ec8a
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".
2023-01-05 13:25:55 +01:00
Danil Alexeev 0d25d8e7fc
`AnimatedSprite{2D,3D}` improvements
* Add support for individual frame duration to `SpriteFrames`.
* Various minor improvements.
2023-01-05 13:13:25 +03:00
Rémi Verschelde 0160fea1ce
Merge pull request #70884 from clayjohn/Depth-prepass
Ignore depth draw optimization when using depth draw alpha prepass
2023-01-03 23:23:29 +01:00
Rémi Verschelde 565ae3b767
Merge pull request #67694 from aaronfranke/its-time
Remove duplicate Month and Weekday enums
2023-01-03 23:21:19 +01:00
clayjohn 062fb8b0dc Ignore depth draw optimization when using depth draw alpha prepass
This is necessary as the scene shader still uses alpha in this case so we can't discard fragments that weren't written to the depth buffer
2023-01-03 12:33:07 -08:00
Rémi Verschelde f0893890e1
Merge pull request #70482 from bruvzg/ios_pencil
[iOS] Add Apple Pencil pressure and tilt support.
2023-01-03 15:51:39 +01:00
Rémi Verschelde 432c0dee7c
Merge pull request #70708 from rburing/bind_pin_joint_set_param_2d
Bind setter and getter for pin joint parameters in `PhysicsServer2D`
2023-01-03 12:39:43 +01:00
Rémi Verschelde 151e1355e8
Merge pull request #63650 from fabriceci/apply-moving-platform-angular-velocity
Allow to apply the angular velocity of a moving platform
2023-01-03 12:39:35 +01:00
Rémi Verschelde 4e360ac612
Merge pull request #70702 from vnen/gdscript-error-on-assign-void
GDScript: Error when assigning return value of void function
2023-01-03 12:23:00 +01:00
Ryan Roden-Corrent 53181e4090
Explain that Array.duplicate will not deep-copy Object.
This was somewhat implied by specifically calling out nested arrays and
dictionaries, but I was still unsure and had to test it myself.
One might expect that `Resource` objects, which have a `duplicate`
method, might be deep-copied.
2022-12-30 11:59:07 -05:00
George Marques bc739a4687
GDScript: Make using return of void function an error
Remove the `VOID_ASSIGNMENT` warning since those cases will be errors
now.
2022-12-30 13:35:38 -03:00
Mikael Hermansson ba8af83679 Bind methods related to physics query exclusions 2022-12-29 19:29:08 +01:00
Ricardo Buring 6bc313c765 Bind setter and getter for pin joint parameters in PhysicsServer2D 2022-12-29 17:36:08 +01:00
Markus Sauermann 06f0184b63 Fix confusion about TreeItem.add_button ambiguity between id and index
A TreeItem button has an id and an index, which can be distinct.
This leads to confusion.

This PR documents the distinction between id and index.
2022-12-29 00:43:45 +01:00
Hana f130ad622a Add missing OptionButton method descriptions 2022-12-28 18:24:46 +01:00
kobewi f2367e0782 Retry loading addons after filesystem scan 2022-12-28 15:40:45 +01:00
kobewi e9a659be5a Improve ResourcePreloader description 2022-12-28 14:19:55 +01:00
Fabio Alessandrelli 615fd98620 [Web] Expose API to force file system sync.
Mostly useful for modules and extensions that can't use FileAccess to
write files.
2022-12-27 12:33:41 +01:00
Aaron Franke 8d7d1b0bb2
Remove duplicate Month and Weekday enums
Well, they were duplicately-exposed, but triplicately-defined.
2022-12-26 15:16:25 -06:00
Yuri Rubinsky 5be4c0b390
Merge pull request #70496 from Chaosus/astargrid_divide_heuristics 2022-12-24 13:00:55 +03:00
Yuri Rubinsky 16efd0b0fc Divide `AStarGrid2D::default_heuristic` into two different heuristics 2022-12-24 09:31:02 +03:00
Rémi Verschelde d005293a34
Merge pull request #70477 from mihe/bind-joint-disable
Bind methods related to disabling collision between joint bodies
2022-12-23 23:43:18 +01:00
bruvzg 223a612c0c
[iOS] Add Apple Pencil pressure and tilt support. 2022-12-23 23:44:10 +02:00
Yuri Sizov 0369475773
Merge pull request #70441 from matt08-prog/doc-ArrayMesh
Clarify the description of ArrayMesh::regen_normal_maps
2022-12-23 21:17:01 +03:00
Mikael Hermansson c1379523ea Bind methods related to disabling collision between joint bodies 2022-12-23 14:16:33 +01:00
Rémi Verschelde 1cab6c91e9
Merge pull request #69998 from BastiaanOlij/sorting-pivot-4
Added options for sorting transparent objects (port of PR #63040)
2022-12-23 09:47:24 +01:00
Bastiaan Olij 6f4f38db07 Added options for sorting transparent objects (port of PR 63040) 2022-12-23 19:30:33 +11:00
matt08-prog f708684244 changed wording for ArrayMesh::regen_normal_maps' description 2022-12-23 00:30:13 -08:00
Rémi Verschelde ecd895a860
Merge pull request #70278 from TokageItLab/add-animation-started-finished-signal-to-tree
Add `animation_started/finished` signals to `AnimationTree` and fix time accuracy in StateMachine
2022-12-23 09:08:17 +01:00
Rémi Verschelde 8eec9f7d3c
Merge pull request #69797 from TokageItLab/time-edit-inspector-plugin
Animation: Add inspector plugin for key time edit & Change `track_find_key()` argument to find key with approximate
2022-12-23 09:07:15 +01:00
Rémi Verschelde 9b4888b7c9
Merge pull request #65312 from SaracenOne/auto_advance_behaviour
Make auto-advance flag a requirement for conditional/expression evaluation
2022-12-23 09:05:49 +01:00
Rémi Verschelde c2d8269a72
Merge pull request #70334 from Sauermann/fix-button-group-doc
Add configuration warning when ButtonGroup is used with non-toggleable buttons
2022-12-22 08:51:23 +01:00
Rémi Verschelde 4ba5289f91
Merge pull request #70413 from Koyper/rtl_rename_remove_line
[RTL] Rename remove_line() to remove_paragraph() for naming consistancy.
2022-12-22 08:51:13 +01:00
Markus Sauermann e4e13a404d Add configuration warning when ButtonGroup is used with non-toggleable buttons
Also fix ambiguous documentation of ButtonGroup.
2022-12-22 06:59:47 +01:00
Silc Renew 060fb2d093 Add inspector plugin for key time edit & Change find key argument 2022-12-22 10:03:06 +09:00
Rémi Verschelde b04bc49443
Merge pull request #68255 from jbcolli2/ColorPickerBug
Fixed Issue #68194 involving ColorPicker being allowed to align horizontally when it shouldn't
2022-12-21 22:25:14 +01:00
Rémi Verschelde f5a6c9cf50
Merge pull request #62029 from Maran23/optional-default-value-project-settings
Allow to specify a default value in `ProjectSettings.get_setting()`
2022-12-21 22:23:43 +01:00
Marius Hanl 5aa243f9da Added the possibility to define a default value in ProjectSettings.get_setting(), which is used when no setting is set.
Also added tests for the project settings.

Co-authored-by: Yuri Sizov <11782833+YuriSizov@users.noreply.github.com>
2022-12-21 19:49:57 +01:00
Rémi Verschelde 5ad02aa08d
Merge pull request #67111 from DarkKilauea/nav-queries-link
Added signal to NavigationAgent when entering a link
2022-12-21 19:38:20 +01:00
Koyper e846b22da6 Renamed RTL remove_line() to remove_paragraph(). 2022-12-21 11:54:18 -06:00
Rémi Verschelde 9ccac04029
Merge pull request #69975 from YuriSizov/docs-area-nd-deserves-better
Improve signal documentation for Area2D/3D
2022-12-21 18:25:18 +01:00
Rémi Verschelde 6b4a01f99a
Merge pull request #69351 from smix8/gridmap_item_navigation_layers_4.x
Change GridMap navigation_layers to per mesh_library item
2022-12-21 09:21:21 +01:00
Rémi Verschelde 49ec96e346
Merge pull request #70367 from Chaosus/astargrid_get_point_pos
Add `get_point_position` method to `AStarGrid2D`
2022-12-21 09:21:13 +01:00
MrBlockers 569ead5762 Add optional arguments to AudioStreamRandomizer
Adds stream and weight parameters to add_stream. By default, weight is
1.0f.
2022-12-20 18:48:02 -05:00
Yuri Rubinsky 0bcbf8e00d Add `get_point_position` method to `AStarGrid2D` 2022-12-20 23:21:38 +03:00
smix8 61f33e205c Change GridMap navigation_layers to be per mesh_library item
Changes GridMap navigation_layers from a single bitmask for the entire GridMap to a bitmask for each item used in the mesh_library with a baked navmesh.
2022-12-20 20:51:32 +01:00
Silc Renew 4cd144d5fb Add animation_started/finished signals to AnimationTree 2022-12-21 01:20:22 +09:00
Rémi Verschelde 2a04b18d37
Merge pull request #70339 from Chaosus/astargrid2d_weight_scale
Restore weight scale for `AStarGrid2D` (partially)
2022-12-20 13:30:37 +01:00
Rémi Verschelde f318d60e06
Merge pull request #65376 from reduz/astc-support
Implement basic ASTC support
2022-12-20 12:44:30 +01:00
Rémi Verschelde 08f6a46a8d
Merge pull request #70342 from twaritwaikar/fix-vcs-bindings
VCS: Fix GDExtension return types for VCS after Array type hardening
2022-12-20 12:43:15 +01:00
Juan Linietsky 71d21c7ccb Implement basic ASTC support
Implements basic ASTC support:
* Only 4x4 and 8x8 block sizes.
* Other block sizes are too complex to handle for Godot image compression handling. May be implemented sometime in the future.

The need for ASTC is mostly for the following use cases:
* Implement a high quality compression option for textures on mobile and M1 Apple hardware.
* For this, the 4x4 is sufficient, since it uses the same size as BPTC.

ASTC supports a lot of block sizes, but the benefit of supporting most of them is slim, while the implementation complexity in Godot is very high.
Supporting only 4x4 (and 8x8) solves the real problem, which is lack of a BPTC alternative on hardware where it's missing.

Note: This does not yet support encoding on import, an ASTC encoder will need to be added.
2022-12-20 11:26:30 +01:00
Twarit Waikar 18df2f36e8 VCS: Fix GDExtension return types for VCS after Array type hardening 2022-12-20 15:42:31 +05:30
Rémi Verschelde 5d97889d1a
Merge pull request #61239 from Calinou/tubetrailmesh-add-cap-properties
Add properties to disable top/bottom cap generation in TubeTrailMesh
2022-12-20 10:32:47 +01:00
Rémi Verschelde 923311dea0
Merge pull request #70303 from Calinou/doc-font-outlines-msdf
Document MDSF font outlines may require `msdf_pixel_range` adjustments
2022-12-20 10:32:32 +01:00
Rémi Verschelde f1f6b35b8c
Merge pull request #70244 from DarkKilauea/nav-fix-abbrev-compat
[4.x] Fix typo and ensure backwards compatibility for changed property names
2022-12-20 10:32:26 +01:00
Yuri Rubinsky 8c478dcec9 Restore weight scale for `AStarGrid2D` (partially) 2022-12-20 12:22:32 +03:00
Josh Jones 0572346985
Fix typo and ensure backwards compatibility for changed property names
Changes to the name of the `navmesh` and `navpoly` properties on
`NavigationRegion` caused navigation data to be lost on load.
This PR creates uses `_set`/`_get` to handle compatibility with the
older names on load, preserving the data.

Also fixes a typo on `get_vertices_per_polygon` in `NavigationMesh`,
and renames the property to remove the `polygon_` prefix which doesn't
match the setter/getter.

Co-authored-by: Rémi Verschelde <rverschelde@gmail.com>
2022-12-20 09:57:54 +01:00
Hugo Locurcio 6e330e8a75
Add properties to disable top/bottom cap generation in TubeTrailMesh
This can be used to improve generation and rendering performance,
or for certain special effects such as particle trails.
2022-12-19 17:29:32 +01:00
Hugo Locurcio fcf54cabba
Document MDSF font outlines may require `msdf_pixel_range` adjustments 2022-12-19 17:17:45 +01:00
Rémi Verschelde d124596862
Merge pull request #70263 from reduz/restore-rotation_degrees
Restore 'rotation_degrees' properties.
2022-12-19 16:28:44 +01:00
Rémi Verschelde adc1096b19
Merge pull request #70219 from bruvzg/msdf_outline_scaling
Scale MSDF font outline with the font size and MSDF source size to match dynamic font behavior.
2022-12-19 16:26:56 +01:00
Rémi Verschelde 845e655cba
Merge pull request #70285 from MuffinManKen/textserver-format_number-default-docs
Update documentation for TextServer.format_number() when language parameter is omitted
2022-12-19 16:26:45 +01:00
Rémi Verschelde f29f3db419
Merge pull request #59682 from Sauermann/fix-following-viewport-transform
Include the follow-viewport-transform into CanvasLayer transform calculations
2022-12-19 16:26:19 +01:00
Juan Linietsky 80b578b060 Restore 'rotation_degrees' properties.
By popular demand, restoring the helper properties to rotate objects in degrees.
Affected are local and global rotations for:

* Node2D
* Node3D
* Control
2022-12-19 10:59:47 +01:00
Ken Paulson f1d2194c04 Update documentation for TextServer.format_number() when language parameter is omitted. 2022-12-18 23:11:02 -05:00
Markus Sauermann 2da2220da7 Include the following-viewport-transform into CanvasLayer transforms
The following-viewport-transform was missing from several calculations
2022-12-18 22:44:34 +01:00
Josh Jones 5d8ba2b2d1 Add support for emitting a signal when entering a NavLink 2022-12-17 16:33:41 -08:00
Rémi Verschelde 0bb94df247
Merge pull request #70230 from DarkKilauea/nav-experimental
[4.x] Mark navigation classes and nodes as experimental
2022-12-18 00:31:27 +01:00
smix8 34e7628f5f Fix Navigation API abbreviations inconsistency
Schema for navigation to name user facing API with  "navigation" without abbreviation and e.g. NavigationServer internals with abbr "nav".
2022-12-17 22:06:22 +01:00
bruvzg 20d9457f9d
Scale MSDF font outline with the font size and MSDF source size to match dynamic font behavior. 2022-12-17 22:47:54 +02:00
Rémi Verschelde 10bc1d8710
Merge pull request #30675 from zaksnet/link-button-link-prop
Add a `uri` property to `LinkButton`
2022-12-17 20:58:15 +01:00
Rémi Verschelde d25a64ffca
Merge pull request #70204 from Calinou/ios-remove-disable-touch-setting
Remove Disable Touch debug project setting
2022-12-17 20:56:28 +01:00
Rémi Verschelde a1f481a7d6
Merge pull request #70202 from Calinou/viewport-transparent-background-rename-project-setting
Move transparent background project setting to a subsection
2022-12-17 20:56:19 +01:00
Josh Jones 32371906eb Mark navigation classes and nodes as experimental
The navigation team has some large changes planned for navigation in the 4.x timeframe, so marking these nodes as experimental to give users a heads up that the API may change in breaking ways.
2022-12-17 11:12:00 -08:00
Hugo Locurcio 70f6d42c92
Remove Disable Touch debug project setting
This project setting was only implemented and iOS and likely served
no purpose outside of debugging during development of engine features.

It was also located in a confusing location in the project settings
editor, as it was located below a root category (which appears in bold
and is normally not seen as clickable by users).
2022-12-17 18:47:29 +01:00
Hugo Locurcio a3eac5fc7c
Move transparent background project setting to a subsection
This prevents the project setting from being located directly within
a root category, which is confusing from an UX perspective in the
project settings editor.
2022-12-17 18:45:21 +01:00
Zak d73a9b56b0
Add `uri` property for LinkButton
Co-authored-by: Rémi Verschelde <rverschelde@gmail.com>
2022-12-17 15:27:33 +01:00
Rémi Verschelde 7972107c48
Merge pull request #70114 from clayjohn/custom-aabb
Expose GeometryInstance3D.custom_aabb property
2022-12-17 12:27:46 +01:00
Rémi Verschelde ffed638cbc
Merge pull request #70116 from Calinou/vibrate-handheld-silence-warning
Silence `Input.vibrate_handheld()` warning as it's already documented
2022-12-16 13:47:11 +01:00
Rémi Verschelde 912fd3f0e1
Merge pull request #64563 from timothyqiu/word-wrap
Fix `String::word_wrap()` for long words
2022-12-16 13:47:05 +01:00
Ignacio Roldán Etcheverry df0cf08878
Merge pull request #69867 from raulsntos/dotnet/color
C#: Synchronize Color with Core
2022-12-16 13:17:03 +01:00
SaracenOne 092dbe52a9 Change auto_advance flag to advance_mode enum and unify with disabled flag.
Expressions and conditions now require auto mode to be set to auto.
Adds a toggle button to the state machine editor for whether new transitions
advance settings should default to auto mode or not.
2022-12-16 07:42:59 +00:00
Haoyu Qiu 207e52c161 Fix String::word_wrap() for long words
- Changes `TextServer.string_get_word_breaks()`
  - Returns pairs of boundary start and end offsets
  - Accepts `chars_per_line` to return line breaks
- Removes `String::word_wrap()`

Co-authored-by: bruvzg <7645683+bruvzg@users.noreply.github.com>
2022-12-16 13:18:57 +08:00
Raul Santos d843a7ab97
C#: Synchronize Color with Core
- Add `Luminance` readonly property.
- Add `LinearToSrgb` and `SrgbToLinear` static methods.
- Add `FromOkHsl` static method.
- Add `FromRgbe9995` static method.
- Add `FromString` static method.
- Expose `FromHtml` static method.
- Expose `HtmlIsValid` static method.
- Add and update some Color documentation.
2022-12-16 03:04:05 +01:00
Hugo Locurcio 4a991887bf
Silence `Input.vibrate_handheld()` warning as it's already documented
The warning causes messages to be spammed if you are calling this
method in a game that runs on both desktop and mobile platforms,
unless you guard all calls to `Input.vibrate_handheld()` with
`OS.has_feature("mobile") or OS.has_feature("web")`.

Since the limitation is already documented (and is obvious enough
given the method's name), the warning message is redundant.
2022-12-16 01:12:20 +01:00
bruvzg 53c76fa5d1
[RTL/TextServer] Add baseline inline alignment mode for objects and RTL tables. 2022-12-15 23:16:02 +02:00
clayjohn 5d51478d70 Expose GeometryInstance3D.custom_aabb property 2022-12-15 10:03:40 -08:00
Yuri Rubinsky d99ea32999
Merge pull request #70102 from Chaosus/rd_remove_usage_indirect 2022-12-15 16:22:19 +03:00
Rémi Verschelde 346efd29e0
Fix typos with codespell 2022-12-15 12:24:08 +01:00
Yuri Rubinsky 807632a90c Changed `STORAGE_BUFFER_USAGE_DISPATCH_INDIRECT` type to enum flags 2022-12-15 14:10:37 +03:00
Gilles Roudière ffec180ccc Remove a confusing TileMap warning 2022-12-15 11:27:38 +01:00
Yuri Rubinsky ecd2c5d5b9 Improve documentation on heuristics in AStarGrid2D 2022-12-15 09:43:17 +03:00
Rémi Verschelde db6976eed4
Merge pull request #70028 from clayjohn/PM-GLES3
Added gl_compatibility as an option to the project creation screen
2022-12-14 00:20:52 +01:00
Rémi Verschelde f3080459d9
Merge pull request #69732 from KoBeWi/rc_undo
Add remote history to EditorUndoRedoManager
2022-12-14 00:19:23 +01:00
Rémi Verschelde 465d4c1d95
Merge pull request #70009 from clayjohn/glow-hq
Remove high quality glow as it is not any higher quality than regular glow
2022-12-13 23:32:15 +01:00
Rémi Verschelde fc517e6c89
Merge pull request #70003 from clayjohn/GLES3-cc
Various fixes and documentation for CanvasGroup
2022-12-13 23:31:43 +01:00
clayjohn 324f5364e7 Added gl_compatibility as an option to the project creation screen
Last selected option is saved as default for next time
2022-12-13 14:11:07 -08:00
clayjohn bdd4001ef0 Various fixes and documentation for CanvasGroup
Properly apply custom materials with CanvasGroups in the GLES3 backend

Properly blur backbuffer when using a partial rect in forward_plus and
gl_compatibility renderers

Properly set fit_margin when clear_margin is set

Fix shader error during backbuffer clear in mobile renderer
2022-12-13 10:22:18 -08:00
clayjohn 5b5cd2b98b Remove high quality glow as it is not any higher quality than regular glow 2022-12-13 10:15:45 -08:00
Rémi Verschelde c7c561ffd5
i18n: Sync classref translations with Weblate (3.5 branch)
(cherry picked from commit f5f0543aec)
2022-12-13 14:38:58 +01:00
Yuri Sizov 29dc73fc6c Improve signal documentation for Area2D/3D 2022-12-12 23:15:14 +03:00
Andrés Botero 3afe5d0c25 Fix docstring for String.get_base_dir 2022-12-12 13:12:25 -05:00
Rémi Verschelde ec8f52df8f
Merge pull request #69629 from smix8/agent_wild_callback_pointer_4.x
Fix Navigation agent callback wild pointer crash
2022-12-12 13:51:48 +01:00
smix8 194c1c44e0 Fix Navigation agent callback wild pointer crash
Fixes crash in sanitizer builds when callback agent or object are already freed.
2022-12-12 13:03:55 +01:00
Rémi Verschelde f1edd03d4c
Merge pull request #69718 from groud/finally_rename_gdnative_to_gdextension
Rename all gdnative occurences to gdextension
2022-12-12 11:43:59 +01:00
Rémi Verschelde a900383e57
Merge pull request #67038 from Calinou/xdg-paths-linux-only
Only support XDG directory path configuration on Linux
2022-12-12 11:43:48 +01:00
Hugo Locurcio 6799d000b1
Only support XDG directory path configuration on Linux
XDG support breaks when running Windows builds via WINE.

Co-authored-by: Rémi Verschelde <rverschelde@gmail.com>
2022-12-12 11:43:16 +01:00
Rémi Verschelde ba3a2adb90
Merge pull request #67050 from KoBeWi/syrt
Warn if isometric TileMap is not Y-sorted
2022-12-12 11:40:54 +01:00
Gilles Roudière be1c9d677d Rename all gdnative occurences to gdextension
Non-exhaustive list of case-sensitive renames:

GDExtension -> GDNative
GDNATIVE -> GDEXTENSION
gdextension -> gdnative
ExtensionExtension ->Extension (for where there was GDNativeExtension)
EXTENSION_EXTENSION ->EXTENSION (for where there was GDNATIVE_EXTENSION)
gdnlib -> gdextension
gdn_interface -> gde_interface
gdni -> gde_interface
2022-12-12 11:04:57 +01:00
Rémi Verschelde c0e05e834a
Merge pull request #69714 from flatline-84/editor_scene_post_import_doc_example
updated example documentation for EditorScenePostImport
2022-12-12 08:27:36 +01:00
flatline-84 bd78d464e6 updated example documentation for EditorScenePostImport 2022-12-12 16:06:35 +11:00
Rémi Verschelde c00b9e5b34
Merge pull request #69905 from Chaosus/rd_dynamic_state_flag
Changed `RD::PipelineDynamicStateFlags` type to enum flags
2022-12-11 15:18:14 +01:00
Rémi Verschelde 1a8785f75d
Merge pull request #69559 from timothyqiu/unique-call
Add note about `GROUP_CALL_UNIQUE` not considering arguments
2022-12-11 15:17:58 +01:00
Yuri Rubinsky 6e48db69a3 Changed `RD::PipelineDynamicStateFlags` type to enum flags 2022-12-11 15:37:35 +03:00
Rémi Verschelde 21136aaf9a
Merge pull request #67399 from Calinou/rename-precision-double-scons
Rename `float=64` SCons option to `precision=double`
2022-12-10 22:08:18 +01:00
Josh Jones 5769b0e8d8 Enable assigning an owner to navigation regions and links
This allows users of the server APIs to get back the nodes that created certain regions and links.
2022-12-10 12:03:06 -08:00
Hugo Locurcio 063637ec77
Rename `float=64` SCons option to `precision=double`
This avoids confusion with the old `bits=64` option and building
for 64-bit CPUs in general.
2022-12-10 16:43:45 +01:00
Rémi Verschelde c9ea6caac8
Merge pull request #69831 from Calinou/audio-random-no-repeats-remove-warning
Remove warning when playing random no-repeat sound with only 1 sound in pool
2022-12-10 10:46:24 +01:00
Hugo Locurcio 35d788cff5
Remove warning when playing random no-repeat sound with only 1 sound in pool
This makes setting up sounds for random pitch/volume faster, as you
don't have to change the mode from Random (Avoid Repeats) to Random
anymore if you only care about randomizing pitch/volume but want
to prevent a warning message from appearing on every playback.
2022-12-09 23:06:51 +01:00
Micky 45e991fdc2 Update StringName documentation to match String's 2022-12-09 20:03:40 +01:00
Rémi Verschelde 907298d673
Merge pull request #68747 from rune-scape/rune-stringname-unification
GDScript: Unify StringName and String
2022-12-09 18:06:48 +01:00
Rémi Verschelde 597e0c0fb9
Merge pull request #69353 from YuriSizov/window-be-more-like-your-brother
Copy local theme overrides from `Control` to `Window`
2022-12-09 18:06:34 +01:00
Rémi Verschelde 75e558e271
Merge pull request #69774 from Calinou/backbuffercopy-only-show-rect-when-relevant
Fix BackBufferCopy `rect` property appearing when not relevant in inspector
2022-12-09 06:52:03 +01:00
Hugo Locurcio 080b6ac1ae
Fix BackBufferCopy `rect` property appearing when not relevant in inspector
The `rect` property is only effective if `copy_mode` is Rect.
2022-12-08 19:52:48 +01:00
kobewi f764db1bdd Add remote history to EditorUndoRedoManager 2022-12-08 15:06:29 +01:00
Haoyu Qiu 80ccd46dcd Use capitalized ID in the doc 2022-12-08 09:40:49 +08:00
Yuri Sizov 29cc86fa6c Copy local theme overrides from Control to Window 2022-12-07 20:50:51 +03:00
Rémi Verschelde 0a3f66471e
Merge pull request #69712 from bruvzg/real_size
Rename `window_get_real_size`, add position counterpart.
2022-12-07 14:29:46 +01:00
Rémi Verschelde 39ad411369
Merge pull request #69707 from bruvzg/x11_exfs
[Linux/X11] Split fullscreen mode into `WINDOW_MODE_EXCLUSIVE_FULLSCREEN` and `WINDOW_MODE_FULLSCREEN` to improve multi-window handling.
2022-12-07 14:29:37 +01:00
Rémi Verschelde a565ddcd09
Merge pull request #69654 from BastiaanOlij/openxr_submit_depth_optional
Make submitting depth buffer in OpenXR optional
2022-12-07 13:25:42 +01:00
Rémi Verschelde de2d0f156e
Merge pull request #69713 from groud/rename_get_surrounding_tiles
Rename get_surrounding_tiles to get_surrounding_cells
2022-12-07 13:24:57 +01:00
Gilles Roudière 3ea54bb3a1 Rename get_surrounding_tiles to get_surrounding_cells 2022-12-07 11:09:10 +01:00
bruvzg edf13eb5a6
Rename `window_get_real_size` to `window_get_size_with_decorations`, add `window_get_position_with_decorations`. 2022-12-07 11:07:30 +02:00
Markus Sauermann e18107a57c Fix Determining Window for Touchscreen
DisplayServer::screen_is_touchscreen will likely never utilize its
parameter p_screen.
This PR replaces this function by DisplayServer::is_touchscreen_available()
with the same functionality.
This solves the problem, that a SubViewport was used for determining
the screen, which resulted in error messages.
2022-12-07 09:54:29 +01:00
bruvzg ad0f6ff85b
[Linux/X11] Split fullscreen mode into `WINDOW_MODE_EXCLUSIVE_FULLSCREEN` and `WINDOW_MODE_FULLSCREEN` to improve multi-window handling. 2022-12-07 09:54:02 +02:00
Bastiaan Olij 484cd90d29 Make submitting depth buffer in OpenXR optional 2022-12-06 22:37:33 +11:00
Rémi Verschelde 05f64399c0
Merge pull request #69628 from Piralein/strong-treatment
fix conversion of csharp attributes in code blocks
2022-12-06 11:00:36 +01:00
Rémi Verschelde 6fd5162124
Merge pull request #55757 from Calinou/light-3d-tweak-shadow-bias
Tweak shadow bias defaults for DirectionalLight3D and OmniLight3D
2022-12-06 10:56:45 +01:00
Rémi Verschelde ae37045f28
Merge pull request #68838 from Mickeon/doc-peeves-3-strings-&-3-sticks
Overhaul String Documentation
2022-12-06 10:47:21 +01:00
rune-scape e79be6ce07 Unify String and StringName 2022-12-05 21:46:47 -05:00
Hana 026791027f fix conversion of csharp attributes in code blocks 2022-12-05 22:58:47 +01:00
Hugo Locurcio e560971bf2
Tweak shadow bias defaults for DirectionalLight3D and OmniLight3D
- Increase DirectionalLight3D normal bias to 2.0 to reduce shadow acne
  at grazing angles.
- Decrease OmniLight3D bias to 0.1 to reduce shadow peter-panning.
2022-12-05 21:53:29 +01:00
Micky 3b71d85f9f Overhaul String Documentation 2022-12-05 20:33:47 +01:00
Rémi Verschelde 65cbcaeaa5
Merge pull request #69594 from Mickeon/doc-peeves-read-a-dictionary
Overhaul Dictionary Documentation
2022-12-05 18:07:43 +01:00
Rémi Verschelde 29e4588f92
Merge pull request #68983 from Mickeon/doc-peeves-colorful
Tweak Color Documentation
2022-12-05 18:07:35 +01:00
Rémi Verschelde fef6df489f
Merge pull request #68231 from Mickeon/doc-you-cannot-get-rid-of-me
Add missing RID operator descriptions
2022-12-05 18:06:43 +01:00
Rémi Verschelde b5fd901b07
Merge pull request #69115 from xiongyaohua/curve2d_baking_refactor
Curve2d baking and sampling refactor
2022-12-05 18:06:25 +01:00
Rémi Verschelde a50e4fed18
Merge pull request #69343 from YuriSizov/core-missing-property-revert-getters
Add missing public `property_*_revert` getters
2022-12-05 18:05:59 +01:00
Micky b77f93516e Overhaul Dictionary Documentation 2022-12-05 17:17:53 +01:00
Micky 6c6c8c2bc7 Tweak Color Documentation 2022-12-05 17:15:59 +01:00
Yaohua Xiong 91e9ad92f5 Refactor baking code for Curve2D
The main change is to caculate tangent directly from bezier curve, without going
through discretized polyline, avoiding pitfalls of discretization. A similar refacor
had been applied to Curve3D.

The test cases for Curve2D is updated, comparing floating point with is_equal_approxmiate()
instead of `==`, in order to avoid float precision problem.
2022-12-05 21:22:05 +08:00
Yuri Sizov 9e71cacd61 Improve layout of generated class references RST pages
- General improvements to the page layout
- Improved formatting for all class (properties, signals, annotations, theme properties, methods, operators, constructors, enumerations, constants)
- Added extra styling opportunities throughout the generated document
- Made generated tables more flexible to their content
- Changed highlighting for self-reference from code to strong
2022-12-05 15:30:09 +03:00
Rémi Verschelde 73de09f38e
Merge pull request #69580 from bruvzg/rtl_fix_search
[RTL] Fix search method not taking nested frame and line wraps into account.
2022-12-05 10:14:00 +01:00
Rémi Verschelde 8912f3e4a7
Merge pull request #69578 from dsnopek/android-native-handles
Clean up DisplayServerAndroid::window_get_native_handle() with the GLES3 renderer
2022-12-05 00:31:12 +01:00
Rémi Verschelde a738f50886
Merge pull request #69357 from TokageItLab/byebye-trigger
Remove `UPDATE_TRIGGER` mode from `ValueTrack::UpdateMode` & Match behaviors between `AnimationTree` and `AnimationPlayer`
2022-12-05 00:06:23 +01:00
bruvzg 889bcff24f
[RTL] Fix search method not taking nested frame and line wraps into account. 2022-12-04 22:11:21 +02:00
David Snopek 61cec0b023 Clean up DisplayServerAndroid::window_get_native_handle() with the GLES3 renderer 2022-12-04 13:07:51 -06:00
bruvzg ecec415988
Use system fonts as fallback and improve system font handling.
Add support for font weight and stretch selection when using system fonts.
Add function to get system fallback font from a font name, style, text, and language code.
Implement system font support for Android.
Use system fonts as a last resort fallback.
2022-12-04 18:44:20 +02:00
Haoyu Qiu 3f2d6f5f6c Add note about GROUP_CALL_UNIQUE not considering arguments 2022-12-04 15:05:59 +08:00
Rémi Verschelde e0f9bc6629
Merge pull request #64312 from KoBeWi/StringNameEdit
Improve usage of StringNames in GraphEdit
2022-12-03 12:45:53 +01:00
Yaohua Xiong 69f84563a3 Fix Curve3D::get_closest_point() broken
The problem is caused by calling adaptive tessellation baking function by mistake, which produce too few points for straight lines. Calling the even length tessellation fix the problem.

The code for `get_closest_point()` and `get_closest_offset()` are also updated. They used to assume bake interval to be exact, which is no longer true.

The out dated document for `get_closest_point()` is also updated.
2022-12-03 17:01:03 +08:00
[Error:27] 2d7793ed4a Make Roughness and Refraction not mention AO
Removes the mentions of ambient occlusion in the descriptions and replaces them with the appropriate texture channel.
2022-12-02 21:03:42 -05:00
kobewi 5490c22ffb Improve usage of StringNames in GraphEdit 2022-12-02 22:57:23 +01:00
Silc Renew 83135aa122 Remove UPDATE_TRIGGER & Match behaviors between AnimationTree/Player
#69357
2022-12-02 20:28:10 +09:00
Rémi Verschelde 8c094207a0
Merge pull request #61958 from jtnicholl/animation_connections
Add `animation_changed` signal to `AnimationLibrary`, have `AnimationPlayer` connect to it instead of `Animation`'s `changed`
2022-12-02 12:24:32 +01:00
Rémi Verschelde 10e9a85607
Merge pull request #69336 from TokageItLab/get-anim-keys-more-exactly
Refactor process of animation to retrive keys more exactly
2022-12-02 12:24:24 +01:00
bruvzg 0541c746ee
[RichTextEffect] Restore missing `relative_index` property. 2022-12-02 09:50:54 +02:00
kobewi 7e2a8afb57 Rework how current Camera2D is determined 2022-12-02 00:05:02 +01:00
Silc Renew 1fc3833617 Refactor process of animation to retrive keys more exactly 2022-12-01 22:07:47 +09:00
Yuri Sizov a9961b378a Add missing public property_*_revert getters 2022-11-29 23:07:40 +03:00
Hendrik Brucker e84f45fc93 Move z_index, z_as_relative and y_sort_enabled from Node2D to CanvasItem 2022-11-29 17:11:22 +01:00
Rémi Verschelde 09e1db2148
Merge pull request #68665 from TokageItLab/cut-unkeyed-gltf-anim
Add "Trimming" option to cut un-keyed timeline before first key in glTF animation
2022-11-29 16:51:56 +01:00
Silc Renew db7473672f Add trimming option to cut un-keyed timeline before first key in gltf 2022-11-29 13:53:33 +09:00
Rémi Verschelde ef090ee6ea
Merge pull request #68874 from TokageItLab/fix-unique-path-keying
Added option to `get_path_to()` to get the shortest path considering unique name
2022-11-28 14:49:34 +01:00
Rémi Verschelde 12f0660518
Merge pull request #68992 from TokageItLab/animtree-trackend-process
Refactor process of AnimationTree for end of animation
2022-11-28 14:49:19 +01:00
Rémi Verschelde bb9cd4063e
Merge pull request #69199 from TokageItLab/fix-and-refactor-root-motion
Fix broken root motion scale & Refactor API & Add sample codes in documentation
2022-11-28 14:49:04 +01:00
Rémi Verschelde 4a459a8c52
Merge pull request #69138 from Calinou/doc-light2d
Document the Light2D, PointLight2D and DirectionalLight2D classes
2022-11-28 08:46:36 +01:00
Rémi Verschelde 2fadc1299d
Merge pull request #67871 from Calinou/editor-theme-add-oled-preset
Add Black (OLED) editor theme preset
2022-11-28 08:46:12 +01:00
Rémi Verschelde 5eeb6e5906
Merge pull request #68532 from Calinou/cmdline-user-args-add-alternative-separator
Allow `++` as an alternative separator to `--` for user CLI arguments
2022-11-28 08:40:14 +01:00
Rémi Verschelde f4faa507d4
Merge pull request #68836 from Calinou/projectsettings-vrs-texture-allow-more-formats
Allow all lossless image formats to be used for VRS texture project setting
2022-11-28 08:38:08 +01:00
Rémi Verschelde 794adbe996
Merge pull request #69178 from aaronfranke/mesh-shape
Use a more specific type for Mesh create_(convex|trimesh)_shape
2022-11-28 08:05:50 +01:00
Yuri Rubinsky 5934eef44c Changed `RenderingDevice::TextureUsageBits` type to enum flags 2022-11-26 13:08:07 +03:00
Silc Renew 09adf5f20e Fix broken root motion scale and refactor API 2022-11-26 17:26:10 +09:00
Aaron Franke 93ab82536d
Use a more specific type for Mesh create_(convex|trimesh)_shape 2022-11-25 11:43:11 -06:00
Micky 67cdac6db8 Remove `Array.find_last()` 2022-11-25 18:34:50 +01:00
Haoyu Qiu 06a0b26c9e Fix inspector not showing name for LabelSettings.font 2022-11-25 12:48:37 +08:00
Hugo Locurcio ca44deae9d
Document the Light2D, PointLight2D and DirectionalLight2D classes 2022-11-24 23:08:46 +01:00
Rémi Verschelde d7e3fce995
Merge pull request #68566 from Mickeon/node-print-orphans-static
Make `Node.print_orphan_nodes()` static
2022-11-24 18:55:30 +01:00
Rémi Verschelde 4a8b725bc9
Merge pull request #68386 from MewPurPur/snappedi-snappedf
Implement snappedi, snappedf, and Vector[2/3/4]i.snapped
2022-11-24 18:54:49 +01:00
Rémi Verschelde 5e2bb98eee
Merge pull request #68806 from MewPurPur/printraw-warn-better-in-docs
Make it clearer that printraw only prints to terminal
2022-11-24 18:54:42 +01:00
VolTer a18afb9a56 Make it clearer that printraw only prints to terminal 2022-11-24 18:08:02 +01:00
Rémi Verschelde f6f8a48459
Merge pull request #69107 from Mickeon/oops
Fix warning in Signal Documentation
2022-11-24 13:24:47 +01:00
Rémi Verschelde 9d9d8a7c90
Merge pull request #69089 from raulsntos/dotnet/docs-object
Fix C# documentation for Godot.Object
2022-11-24 13:24:37 +01:00
Micky c868c9fc41 Fix warning in Signal Documentation 2022-11-24 11:34:32 +01:00
Rémi Verschelde f16c5b564b
Merge pull request #69043 from xiongyaohua/path3d_bake_refactor_fix
`Curve3D` bake refactor continue
2022-11-24 10:51:07 +01:00
Rémi Verschelde f319123af9
Merge pull request #69037 from M-O-Marmalade/distortion-fixes
AudioEffectDistortion docs & inspector edits
2022-11-24 10:47:27 +01:00
Rémi Verschelde c639efcbc4
Merge pull request #69086 from Calinou/doc-physicalskymaterial
Document PhysicalSkyMaterial's `energy_multiplier` property
2022-11-24 10:47:21 +01:00
Rémi Verschelde 92f1058311
Merge pull request #69060 from rburing/exclude_typedarray
Update remaining physics `exclude` parameters to use `TypedArray`
2022-11-24 10:40:25 +01:00
Raul Santos e27f127a74
Fix C# documentation for Godot.Object
- Add and fix a few C# examples
- Add tips about avoiding allocating StringNames
2022-11-24 04:09:14 +01:00
Yaohua Xiong f9fa182abc Refactor Curve3D::_bake() method
The main change is to caculate tangent directly from bezier curve, without going
through discretized polyline, avoiding pitfalls of discretization.

Other changes are:
1. Add an bezier_derivative() method for Vector3, Vector2, and Math;
2. Add an tesselate_even_length() method to Curve3D, which tesselate bezier curve to even length segments adaptively;
3. Cache the tangent vectors in baked_tangent_vector_cache;
2022-11-24 10:52:06 +08:00
Hugo Locurcio bd457348d0
Document PhysicalSkyMaterial's `energy_multiplier` property
This makes the PhysicalSkyMaterial class 100% documented.
2022-11-24 01:38:25 +01:00
Max Hilbrunner f05a55ef95
Merge pull request #68217 from Mickeon/doc-stringmngffh
Add missing String & StringName operator descriptions
2022-11-23 21:28:17 +01:00
Max Hilbrunner abdbd45ef9
Merge pull request #68262 from Mickeon/doc-peeves-callcallcallcallable
Tweak Callable's documentation
2022-11-23 21:26:29 +01:00
Ricardo Buring 4453d63bb0 Update remaining physics exclude parameters to use TypedArray
Also update the documentation to refer to the get_rid() method.
2022-11-23 19:39:04 +01:00
Micky c164f1835c Add missing String & StringName operator descriptions 2022-11-23 18:56:39 +01:00
Yuri Sizov 5923df9234
Merge pull request #67880 from Mickeon/doc-peeves-objection
Overhaul Object's Documentation
2022-11-23 20:45:26 +03:00