Commit Graph

3324 Commits

Author SHA1 Message Date
Hugo Locurcio 196c4fff13
Clarify what `set_as_toplevel()` does in CanvasItem 2022-03-31 02:07:16 +02:00
Rémi Verschelde 81eda4eee0 doc: Fix String.rsplit code example
Fixes #36898.
Supersedes and closes #36951.

(cherry picked from commit e7fd0ec31f)
2022-03-28 23:51:32 +02:00
Haoyu Qiu 98069fa6f1 Document how to specify explicit value for `PROPERTY_HINT_ENUM` names
(cherry picked from commit 405bc96a1e)
2022-03-28 23:49:06 +02:00
Haoyu Qiu f062e967f5 Mention default output node name for AnimationNodeBlendTree
(cherry picked from commit 6bf01e0567)
2022-03-28 23:45:23 +02:00
bruvzg fd2fba7c2c
Add binary MO translation file support. Add brotli decoder and WOFF2 support.
Use smaller .mo files instead of .po, if gettext is available.
Convert editor fonts to .woff2 format.
2022-03-25 19:51:39 +02:00
Hugo Locurcio 292ad704e6
Increase the maximum number of concurrent DNS queries from 32 to 256
This makes the following error message less likely to be printed
when performing many concurrent HTTP requests:

    Condition ' resolving == IP::RESOLVER_INVALID_ID ' is true. returned: ERR_BUG
2022-03-25 17:13:51 +01:00
Rémi Verschelde 788abafb77
Merge pull request #57673 from Calinou/doc-bakedlightmap-atlas-size
Document BakedLightmap atlas generation only being compatible with GLES3
2022-03-22 20:12:31 +01:00
Hugo Locurcio ff8e0519a8
Document BakedLightmap atlas generation only being compatible with GLES3 2022-03-22 17:36:15 +01:00
zacryol 3fe37f9635 update _init() description
Specify details regarding required parameters.

(cherry picked from commit 21fc3cbe81)
2022-03-22 10:29:25 +01:00
Hugo Locurcio 0e25cd0788 Mention that Node's `owner` must be set for persistence to work
This is already done in `Node.add_child()` documentation, but
this copies the note in `Node.owner` for good measure.

(cherry picked from commit be1acf3b92)
2022-03-22 08:55:07 +01:00
Jason Knight 09e4672f0d Bind NOTIFICATION_LOCAL_TRANFORM_CHANGED 2022-03-20 11:34:29 -06:00
Rémi Verschelde 9e44fb166d
Merge pull request #59344 from madmiraal/fix-57943-3.x
[3.x] Ensure minimum modifiers are pressed when matching actions
2022-03-20 11:27:20 +01:00
Marcel Admiraal 88c723c33c Ensure minimum modifiers are pressed when matching actions 2022-03-20 08:08:40 +00:00
Rémi Verschelde cec7fc4ffe
Merge pull request #58479 from ChronicallySerious/use-time-in-vcs
Use Time singleton in VersionControlEditorPlugin
2022-03-18 20:34:56 +01:00
ChronicallySerious 9e978bf989 Use Time singleton in VersionControlEditorPlugin
Instead of displaying the exact string, now Godot uses the Time
singleton to calculate the date string from the UTC Unix timestamp and
also uses Time's timezone offset conversion to string function
2022-03-19 00:50:37 +05:30
Ricardo Buring 812d45ea7c Document that PhysicsServer's get_process_info is implemented only for Godot Physics 2022-03-18 20:01:45 +01:00
Rémi Verschelde 6a524b2cc0
Merge pull request #57661 from lawnjelly/bind_mesh_merging 2022-03-17 19:54:31 +01:00
taigi100 e49d8f8b4c Update color constants to use HEX codes
(cherry picked from commit bd247fa315)
2022-03-17 15:49:58 +01:00
Haoyu Qiu d537a88299 Add item tooltip access to OptionButton
(cherry picked from commit a635ecf6d4)
2022-03-17 14:45:19 +01:00
Hugo Locurcio 1a300503c6 Document Range's `value_changed` signal is also emitted with code changes
This also mentions that the signal is potentially emitted every frame,
which can have performance implications.

(cherry picked from commit cdbb31adc9)
2022-03-17 14:45:19 +01:00
Hugo Locurcio b087538119
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-03-16 23:01:02 +01:00
Marcel Admiraal d2c0ee700a Update documentation for Control rect_pivot_offset to include rotation 2022-03-15 10:28:45 +00:00
Rémi Verschelde ee818e1631
Merge pull request #54026 from ConteZero/primary_clipboard_linux_3.x 2022-03-14 18:52:20 +01:00
ConteZero 2ff0735329 Added primary clipboard for Linux 2022-03-14 15:28:36 +01:00
Rémi Verschelde fdaf0de3f0
Merge pull request #59100 from RandomShaper/mouse_drop_on_disable_3.x 2022-03-14 11:25:12 +01:00
Pedro J. Estébanez 3d7821bf1f Drop mouse focus and over when gui input is globally disabled
Since some porjects may be relying on the former behavior, this is opt-in via a new project setting, disabled by default, but enabled for new projects, since it's the new standard behavior (and the only one in 4.0).
2022-03-14 11:06:26 +01:00
ConteZero 0ffacff998 [3.x] Add option to make selection unique 2022-03-14 09:48:09 +01:00
Rémi Verschelde 08c3e00b95
Merge pull request #55355 from ConteZero/drag_and_drop_3.x 2022-03-14 08:43:22 +01:00
ConteZero 4167e98088 Add drag and drop to TextEdit, LineEdit, RichTextLabel 2022-03-14 08:15:25 +01:00
Hugo Locurcio caf2c20655 Don't store and show current file/directory/path FileDialog properties
These properties are only useful at run-time, so they don't need
to be displayed in the editor and stored.

(cherry picked from commit 2ad6e11b78)
2022-03-13 15:46:01 +01:00
Rémi Verschelde 3eee2f45a3
Merge pull request #57674 from RandomShaper/fix_ubershader_android
Improve ubershader compatibility
2022-03-13 00:53:48 +01:00
Hugo Locurcio c731cda3d8 Clarify the position of points in `Curve{2D,3D}.add_point()`
(cherry picked from commit 35c8d332b5)
2022-03-12 15:10:28 +01:00
Aaron Franke 3040285b27 Add offset string from minutes conversion method to Time singleton
(cherry picked from commit 55aabb8b06)
2022-03-12 14:44:23 +01:00
Rémi Verschelde f6895fbb46
Merge pull request #59034 from lawnjelly/docs_background_keep 2022-03-12 14:28:00 +01:00
Rémi Verschelde eb36566c34
Merge pull request #58812 from Calinou/os-add-get-screen-refresh-rate-3.x
Add `get_screen_refresh_rate()` to OS
2022-03-11 17:31:20 +01:00
lawnjelly bc924d4b41 Correct docs for Environment background keep mode
The docs incorrectly stated that KEEP was the fastest mode. This is not the case with modern hardware.
2022-03-11 15:44:40 +00:00
Markus Sauermann 2cafaf3adb Fix documentation about depth and width of Height map 2022-03-11 01:03:07 +01:00
Hugo Locurcio cec7c908ca
Add `get_screen_refresh_rate()` to OS
This method can be used to get the refresh rate of a given screen.
It is supported on Windows, macOS, Linux, Android and iOS (but not
HTML5).
2022-03-10 22:10:48 +01:00
Rémi Verschelde 1cf444aff0
Merge pull request #58686 from vnen/gdscript-warn-export-type-mismatch 2022-03-10 21:12:05 +01:00
Rémi Verschelde 1639b3a6a9
Merge pull request #58674 from Calinou/smooth-trimesh-collision-always-setting-3.x 2022-03-10 21:11:44 +01:00
Haoyu Qiu 94a5f9edb0 Fix capitalization of boolean output in classref 2022-03-09 21:56:55 +08:00
Wilson E. Alvarez c37be0f31b
Expose TextEdit get_visible_rows() and get_total_visible_rows() to GDScript 2022-03-08 22:32:22 -05:00
Rémi Verschelde 85b4848ca8
Merge pull request #54188 from Rubonnek/increase_var_arg_max_3x 2022-03-08 13:10:48 +01:00
Wilson E. Alvarez 424dbf70af
Increase VARIANT_ARG_MAX to 8 2022-03-07 10:03:49 -05:00
Hugo Locurcio 413689559c
Always register the Smooth Trimesh Collision project setting
This ensures the project setting never disappears from the editor,
even if the current physics engine is GodotPhysics.

This also adds documentation for the Smooth Trimesh Collision
project setting.
2022-03-02 18:50:21 +01:00
George Marques f2166ba92f
GDScript: Don't coerce default values to the export hint type
This behavior is inconsistent with non tools builds and can create
issues. Instead, a warning is emitted if there's a type mismatch. If the
type can't be converted, an error is shown instead.

For the editor it gives a converted value to avoid issues with the
property editor, which expects the correct type.
2022-03-02 12:26:17 -03:00
Nova c4041ca8c0 Added or improved documentation to a few more String methods
(cherry picked from commit f159e7e5ab)
2022-03-02 11:00:26 +01:00
Markus Sauermann 54eac2aba5 Update doc for match: empty argument doesn't match anything
(cherry picked from commit 70ae6c21de)
2022-03-02 11:00:26 +01:00
skyace65 310adf533d Add more information on triangulate polygon
(cherry picked from commit bcc4d26c48)
2022-02-24 10:33:52 +01:00
Hugo Locurcio 595d67ae8b
Document glow rendering caveats when using GLES3 on mobile 2022-02-23 17:47:16 +01:00
lawnjelly b90f1a3ec0 Disable jitter fix when physics interpolation is enabled. 2022-02-21 10:32:42 +00:00
Hugo Locurcio cfba65fa23 Expose `AudioServer.capture_device` as a property
This is more consistent with `AudioServer.device` (for output),
which is already exposed as a property.

(cherry picked from commit 1d35b37499)
2022-02-19 15:57:36 +01:00
Haoyu Qiu f61ce6ee89 Fix wording in AnimationNode classref
(cherry picked from commit bc37b0508b)
2022-02-19 15:45:43 +01:00
Hugo Locurcio def35898e4
Document that meshes and lights must be fully set up before baking GIProbe 2022-02-18 21:42:06 +01:00
Yuri Sizov df13466139 Add type variations to Theme 2022-02-17 15:24:10 +03:00
Rémi Verschelde 47e34dc4e2
Merge pull request #58157 from Calinou/os-add-get-processor-name-3.x 2022-02-17 12:34:16 +01:00
Hugo Locurcio ac0d37dcef
Add a property hint for the Line2D Round Precision property
This prevents choosing extremely high values which cause performance
issues for no visual benefit.

(cherry picked from commit 6b52aa67b8)
2022-02-17 09:59:28 +01:00
Haoyu Qiu c9f9e06775
Fix documentation about TreeItem button ID
(cherry picked from commit bb766a8fb6)
2022-02-17 09:59:28 +01:00
Wagner Scholl Lemos 2ed43f940b
Added show and hide methods and updated doc API.
(cherry picked from commit 160ee4ef8e)
2022-02-17 09:52:47 +01:00
Rémi Verschelde 125e419f61
Merge pull request #35316 from Calinou/contact-shadows-hide-from-editor
Document Light contact shadows often looking broken
2022-02-17 07:37:45 +01:00
Haoyu Qiu 8f14941ffd Fix mismatched BBCode tags in classref 2022-02-17 10:19:28 +08:00
Hugo Locurcio 9171737e2b
Document Light contact shadows often looking broken 2022-02-17 02:04:07 +01:00
Hugo Locurcio 7f9e974a8b
Add an `OS.get_processor_name()` method
This method can be used to get the CPU model name.
It can be used in conjunction with
`VisualServer.get_video_adapter_name()` and
`VisualServer.get_video_adapter_vendor()` for annotating benchmarks
and automatic graphics quality configuration.
2022-02-16 18:39:02 +01:00
Haoyu Qiu 0e9a9a7ee2 Fix description of OccluderShapePolygon.two_way 2022-02-17 01:21:32 +08:00
Rémi Verschelde 2dd545b512
Merge pull request #58141 from lawnjelly/occluder_shared_resources 2022-02-16 13:29:55 +01:00
lawnjelly 3c2df49832 Fix Occluder to properly share resources
In order to properly support the resource sharing paradigm, Occluders are split into Instances and Resources in the VisualServer. Instances are owned by a Scenario, and Resources are global. OccluderShape resources can now correctly be shared by multiple OccluderInstances.
2022-02-16 09:55:11 +00:00
lawnjelly 522bce1159 Fixed Timestep Interpolation (3D)
Adds fixed timestep interpolation to the visual server.
Switchable on and off with project setting.

This version does not add new API for set_transform etc, when nodes have the interpolated flag set they will always use interpolation.
2022-02-16 09:41:23 +00:00
Hugo Locurcio 7dcb25e37b
Improve documentation for AudioServer device properties and methods
(cherry picked from commit 743b5608e3)
2022-02-15 12:30:58 +01:00
Hugo Locurcio 5ca3a360d1
Clarify identical `hash()` return values due to collisions
(cherry picked from commit 08541fe11d)
2022-02-15 12:27:57 +01:00
Hugo Locurcio 08128351a5
Clamp environment light sky contribution to the [0.0; 1.0] range
The value is already clamped in the editor, but it wasn't being
clamped when the value was set via code. Values outside the [0.0; 1.0]
range can result in broken rendering.
2022-02-14 17:15:06 +01:00
Hugo Locurcio 53b96095eb
Improve completion scroll bar visibility in the script editor (3.x)
This makes the scroll bar bar thicker and more opaque (roughly
matching the editor theme's scroll bar by default).
2022-02-14 14:54:35 +01:00
Hugo Locurcio f1d289f6eb
Improve the `AudioStreamPlayer2D/3D.area_mask` documentation
The documentation was stating that the area mask affects where sounds
can be heard, which is not true. Instead, the area mask affects audio
bus redirection.

Thanks to Azedaxen on the Godot forums for providing this description :)

(cherry picked from commit ab1eaac315)
2022-02-11 09:51:50 +01:00
Rémi Verschelde 7a16bb2ee4
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.

(cherry picked from commit 1bdb82c64e)
2022-02-11 09:50:59 +01:00
reduz e4e3f7d157
Add a signal to notify when children nodes enter or exit tree
-Allows more fine grained notifications (hence better performance) than using the global scene tree signals (node added and removed).
-Required for #55950

(cherry picked from commit fbd9599b04)
2022-02-11 09:50:58 +01:00
TechnicalSoup 49059e3f26
Expand description for warp_mouse_position method
Add more detail to the description for the warp_mouse_position method, clarifying that the vector is in screen coordinates and relative to an origin at the top of the game window.

(cherry picked from commit 3dc1fad262)
2022-02-11 09:50:57 +01:00
Max Hilbrunner 12841d536f
DOCS: Object.set() does nothing on type mismatch
(cherry picked from commit bb7d003881)
2022-02-11 09:50:06 +01:00
Haoyu Qiu 8231303dec Backport FlowContainer 2022-02-11 14:48:40 +08:00
Haoyu Qiu f49ffe4bb0 Backport CanvasLayer visibility 2022-02-11 01:00:35 +08:00
Rémi Verschelde 0c7c640112
Merge pull request #57643 from YeldhamDev/smarter_pm_focus_port 2022-02-10 16:52:08 +01:00
lawnjelly f0af29346b ProjectSettings add dirty flag and project_settings_changed signal
Most frames there will be no change in project settings, and it makes no sense to read settings every frame in case of changes, as a large number of string compares are involved.

This PR adds a signal to ProjectSettings that can be subscribed to in order to keep local settings up to date with ProjectSettings.

In addition a function `ProjectSettings::has_changes()` is provided for objects outside the signal system (e.g. Rasterizers).
2022-02-09 11:20:25 +00:00
Haoyu Qiu a3f6033513 Improve TreeItem button API 2022-02-08 23:56:19 +08:00
Raul Santos 1d3de163dc Add alignment options to icons on buttons.
They can now be centered and right-aligned.

Co-authored-by: jitspoe <jitspoe@yahoo.com>
2022-02-07 21:29:37 +01:00
Fabio Alessandrelli 4c23a902c1 [HTML5] Implement JavaScript PWA update callbacks.
Allows detecting when a new version of the progressive web app service
worker is waiting (i.e. an update is pending), along a function to force
the update and reload all clients.
2022-02-06 18:33:13 +01:00
Marcel Admiraal a4f0e02798 Update definitions of get_mouse_position methods 2022-02-06 09:32:46 +00:00
Pedro J. Estébanez 0d1ec9a7cf Improve ubershader compatibility
- Prevent debug enforced use of ubershader on shaders not supporting it
- Use unsigned integer for ubershader flags
- Add project setting for disabling async shader compilation on mobile
- Stop sampling some textures through different kinds of samplers at the same time
2022-02-05 22:12:31 +01:00
lawnjelly cf1b3fdd55 Bind mesh merging functionality in MeshInstance
The portal system introduced basic mesh merging functionality, this has wide ranging uses outside of the portal system.
For this reason, this PR binds the mesh merging functionality.
It also slightly modifies the calling from RoomManager to use a Vector of Node *, in order to allow binding of the function.
2022-02-05 13:18:17 +00:00
Rémi Verschelde 689f59dca0
Merge pull request #53463 from lawnjelly/vital_redraws
Add editor vital redraws only option
2022-02-04 21:42:49 +01:00
Michael Alexsander f63bea9ef2 Make popup menus focus items automatically when not using the mouse 2022-02-04 17:20:26 -03:00
Hugo Locurcio 92376633f3
Clamp Viewport shadow atlas sizes to improve usability
- Add a range hint to the Viewport `shadow_atlas_size` property.
- Add range steps to the shadow resolution project settings that
  match the lowest allowed values (since lower increments don't
  make sense).
2022-02-04 18:01:16 +01:00
lawnjelly 10eb9564ca Portals - Improve mesh merging
Some improvements to robustness to account for more properties.
Addition of an "allow merging" flag in the cull instance.
2022-02-04 08:40:46 +00:00
Rémi Verschelde 176de98dd6
Merge pull request #57576 from timothyqiu/doc-stream-peer-buffer-3.x 2022-02-03 09:59:20 +01:00
Haoyu Qiu 9150fe5c9a Add documentation for StreamPeerBuffer 2022-02-03 16:01:28 +08:00
Pawel Lampe 6c6e50bf0c Fix navigation merge errors, fixes #56786
- improved `detail/sample_max_error` default value
- improved floating point precision handling in cell key calculations
- improved `merge error` error message
- exposed `cell_height` of `nav_map` to the `Navigation`
- fixed cell key `y` calculation
2022-02-02 23:52:29 +01:00
Rémi Verschelde 78f230885b
Merge pull request #57475 from snailrhymer/look-at-update 2022-02-02 23:07:20 +01:00
lawnjelly a0c6d16c90 Add editor vital redraws only option
When editor continuous redraws is switched off, the editor only redraws when a redraw_request was issued by an element in the scene. This works well in most situations, but when scenes have dynamic content they will continuously issue redraw_requests.

This can be fine on high power desktops but can be an annoyance on lower power machines.

This PR splits redraw requests into high and low priority requests, defaulting to high priority. Requests due to e.g. shaders using TIME are assigned low priority.

An extra editor setting is used to record the user preference and an extra option is added to the editor spinner menu, to allow the user to select between 3 modes:

* Continuous
* Update all changes
* Update vital changes
2022-02-02 11:26:45 +00:00
Hugo Locurcio 7f00317f67
Clarify documentation for Rect2's `has_no_area()` 2022-02-01 22:43:02 +01:00
Rémi Verschelde b6dbff7621
Merge pull request #57361 from lawnjelly/occ_poly_only 2022-02-01 14:04:24 +01:00
lawnjelly 8ea20f5fdd Add OccluderShapePolygon
Add OccluderShapePolygon, glue to Occluder and gizmos etc.
2022-02-01 11:31:06 +00:00
Ev01 fa906f70e9
Fixes invalid links to tutorials in AudioStreamGenerator, AudioStreamGeneratorPlayback, and AudioEffectSpectrumAnalyzer class references
(cherry picked from commit b6c543179c)
2022-01-31 22:54:22 +01:00
Hugo Locurcio 3fd186c0c2
Improve documentation for `ReflectionProbe.max_distance` property
(cherry picked from commit c35968e276)
2022-01-31 22:54:17 +01:00
SnailRhymer 83298da9b8 Backport improved look_at docs and errors
Take extra constraint info and function description from Node3D.look_at to improve Spatial.look_at docs.
Add an explicit error for up == 0
2022-01-31 11:52:15 +00:00
Manolis Papadeas 941879f601
Expose BitMap's `convert_to_image` and `resize` methods to GDScript
(cherry picked from commit 453912d48d)
2022-01-25 18:55:52 +01:00
Wysocki Patryk 6340e4c83f
Expose AnimationNodeOneShot::mix_mode as a property
Fixes #23458.

(cherry picked from commit f16c483c9d)
2022-01-25 18:55:51 +01:00
Rémi Verschelde 2eb12f1d71
doc: Clarify expected type of `Object *` parameters in Tree methods
They're meant to be `TreeItem *` but this can't be bound in Variant.

Fixes #20538.

(cherry picked from commit 81f2ce4e46)
2022-01-25 18:24:02 +01:00
SnailRhymer 6ac800aab7 Add clarification to tile_set_modulate
To resolve 45677, adds a note to tile_set_modulate clarifying how to use tile_modulate in shaders.
2022-01-24 21:23:04 +00:00
Pawel Lampe 67cf622935 Improve `Navigation2D` default settings, fixes #56852
This commit reduces `cell_size` and `edge_connection_margin` default
values so that `Navigation2D` behaves more like in Godot <= `3.4` by default.
2022-01-23 14:07:31 +01:00
Rémi Verschelde e33f8df9ca
Merge pull request #56984 from Calinou/doc-softbody-no-gameplay-3.x 2022-01-23 12:54:36 +01:00
LoserFox 0af26280b6
Fix some errors in Environment documentation
Co-authored-by: Clay John <claynjohn@gmail.com>
Co-authored-by: Max Hilbrunner <mhilbrunner@users.noreply.github.com>
Co-authored-by: Rémi Verschelde <rverschelde@gmail.com>
2022-01-23 00:45:27 +01:00
Rémi Verschelde 6c0c0c4b29
Merge pull request #54165 from Calinou/directional-shadow-runtime-change-3.x
Allow changing directional shadow size at run-time
2022-01-22 15:25:09 +01:00
Mak Kma 1c3d3af6ef backported method get_rid for NavigationAgent 2022-01-21 00:15:16 +03:00
Rémi Verschelde a9b10054b8
Merge pull request #56950 from timothyqiu/has-clipboard-3.x 2022-01-20 12:09:53 +01:00
skyace65 c540a17efc Better explain JSON print indent parameter (3.x) 2022-01-19 20:37:58 -05:00
Hugo Locurcio 94b1ae5599
Document that soft bodies should be avoided for gameplay purposes 2022-01-20 01:36:39 +01:00
rafallus 27fc50d54a
Fix `input_ray_pickable` documentation for `CollisionObject3D`
(cherry picked from commit ba7d3f8331)
2022-01-19 16:04:16 +01:00
kobewi ccb52db232
Clarify to_float() and to_int() methods
(cherry picked from commit 7bb682651f)
2022-01-19 16:04:16 +01:00
bruvzg 7eb8339f6c
[Documentation] Add instruction how to execute built-in commands of various shells.
(cherry picked from commit 9faf1e027a)
2022-01-19 16:04:16 +01:00
kobewi 986b99ed5c
Mention that modifying text erases BBCode stacks
(cherry picked from commit 3f0e9da5a4)
2022-01-19 16:01:04 +01:00
Haoyu Qiu 76297e744d Add `OS.has_clipboard()` to check clipboard content 2022-01-19 20:19:06 +08:00
QueenOfSquiggles cab89124ff
Fixed a typo in BakedLightmap documentation
"capture_propagation" member documentation description was missing the second 'p' in "propagation". Fixed this minor typo
Also resubmitting pull request to 3.x branch as per @Calinou's recommendation.
2022-01-17 09:56:49 -06:00
Haoyu Qiu 7f49e5beec Expose `Image.COMPRESS_SOURCE_LAYERED` to scripting 2022-01-17 20:43:05 +08:00
Rémi Verschelde 879244c54e
Merge pull request #56015 from bruvzg/phy_code_conv 2022-01-16 11:36:26 +01:00
Rémi Verschelde 22166639ed
Merge pull request #56366 from Calinou/async-shaders-use-in-editor
Use asynchronous shader compilation and cache in the editor if requested
2022-01-16 10:34:07 +01:00
Yuri Sizov 58319564fa Unify theme item lookup in Controls and respect default font 2022-01-13 15:21:55 +03:00
Haoyu Qiu b6f0460520 Remove duplicated sentence in EditorVCSInterface classref 2022-01-13 14:39:12 +08:00
Rémi Verschelde 1cc3184f6e
Merge pull request #55444 from Calinou/doc-spritebase3d-modulate-material-override-3.x
Document using SpriteBase3D's `modulate` property with material override (3.x)
2022-01-13 00:00:10 +01:00
Hugo Locurcio 027a584faf
Document using SpriteBase3D's `modulate` property with material override 2022-01-12 22:37:15 +01:00
skyace65 a28955ac46
Fix normal map description
(cherry picked from commit d856074488)
2022-01-12 17:34:56 +01:00
kobewi 8edc8a95b1
Improve FileDialog filters
(cherry picked from commit b403954e41)
2022-01-12 17:33:16 +01:00
Haoyu Qiu 4621b41bfc
Add drag start/end signals for Slider
(cherry picked from commit 753ae7403f)
2022-01-12 17:31:39 +01:00
kobewi 46f65f9d79
Improve description of mouse_exited signal
(cherry picked from commit 4eec0032ea)
2022-01-12 17:28:46 +01:00
zacryol 40b7b575c6
List AnimatedSprite3D in SpriteFrames description
Both AnimatedSprite2D and AnimatedSprite3D use a SpriteFrames resource, but the SpriteFrames
class description currently only lists being used with the 2D variant.

(cherry picked from commit 4391f6a5b5)
2022-01-12 17:28:08 +01:00
Sam ea2080112d
Fixed typos in MeshDataTool documentation
- Fixed missing "be" typo in MeshDataTool's get_face_edge function
- Corrected documentation to say negative values aren't valid

(cherry picked from commit bc9df365b0)
2022-01-12 17:28:08 +01:00
zacryol 21526aa578
Update description of FileDialog `filters` property
specify that multiple filetypes/extensions can be included in one filter within the
PackedStringArray, and provide an example

(cherry picked from commit 123cfb4759)
2022-01-12 17:28:07 +01:00
Arnav Vijaywargiya a51f3f2a58
Fixed incorrect property types
(cherry picked from commit 0c46f73b5e)
2022-01-12 17:28:07 +01:00
bruvzg 6eac65d4fe
Add joystick button index boundary check. Increase max. button number to 128 (max. buttons supported by DirectInput).
(cherry picked from commit 61ea8f8337)
2022-01-12 17:28:07 +01:00
skyace65 7c61e6f72f
Document how to erase project settings with set_setting
(cherry picked from commit 290038952f)
2022-01-12 17:28:07 +01:00
Haoyu Qiu fe1e6eb995
Explain what 2D cross product means
(cherry picked from commit d54586a8e6)
2022-01-12 17:28:07 +01:00
David Cambré c2a9de23f5
Update default port_grab_distance_vertical
(cherry picked from commit 38ad72af44)
2022-01-12 17:28:07 +01:00
follower 99416a21fb
Fix the "AudioEffectRecord" descriptions.
The `AudioEffectRecord` effect has no microphone capture-specific functionality--it can be used with any audio bus.

This patch attempts to clarify this fact (so people like me who want to capture audio output know they're in the right place) while still providing a pointer use of the effect with `AudioStreamMicrophone` for microphone capture.

(cherry picked from commit 022f49437b)
2022-01-12 17:28:06 +01:00
Rémi Verschelde 09884f17a3
Revert "Warn when using an AABB or Rect2 with a negative size"
This reverts commit d75e580765.

Fixes #56509.
2022-01-12 17:28:03 +01:00
Rémi Verschelde 1b0ba42ea1
Merge pull request #55268 from Calinou/gpu-particles-macos-performance-warning 2022-01-12 16:51:31 +01:00
Rémi Verschelde e805ec8574
Merge pull request #54871 from timothyqiu/remove-theme-override
[3.x] Add methods to remove theme overrides
2022-01-11 20:16:05 +01:00
Rémi Verschelde 8a192cd0ab
Merge pull request #55987 from bruvzg/wt🤎3 2022-01-10 16:43:56 +01:00
Rémi Verschelde edd9534f97
Merge pull request #53900 from ChronicallySerious/update-vcs-1 2022-01-10 12:18:57 +01:00
Rémi Verschelde cd47ff1411
Merge pull request #56639 from skyace65/Tweenmethods
Add note on when tween methods return false (3.x)
2022-01-09 19:14:08 +01:00
skyace65 4bd1ce49e6 Add note om when tween methods return false (3.x) 2022-01-08 21:51:30 -05:00
Haoyu Qiu dd462f512d Misc documentation improvements 2022-01-08 22:39:00 +08:00
Rémi Verschelde 01fef99749
Merge pull request #56325 from pycbouh/editor-resource-picker-needs-type-3.x 2022-01-07 16:13:46 +01:00
Rémi Verschelde 4737f563df
Fixup class reference after #54824 2022-01-07 15:25:28 +01:00
Rémi Verschelde aad12a2df5
Merge pull request #54824 from LightningAA/backport-gradient-texture-2d 2022-01-07 14:47:44 +01:00
Rémi Verschelde defb801120
i18n: Sync classref translations with current 3.x codebase 2022-01-07 13:34:14 +01:00
fabriceci 10e63b8dd6 backport moving_platform_apply_velocity_on_leave 2022-01-07 12:54:49 +01:00
Pierre-Thomas Meisels 7dd8e364b1
OSX: Add signing of directory structure in Library when exporting for OSX.
Add exporting of folder structure in PlugIns when exporting for OSX.
2022-01-07 01:15:37 +01:00
Rémi Verschelde b197de6f5f
Fix typos with codespell
Using codespell 2.1.0.

Method:
```
$ cat > ../godot-word-whitelist.txt << EOF
ang
curvelinear
dof
doubleclick
fave
findn
GIRD
leapyear
lod
merchantibility
nd
numer
ois
ony
que
readded
seeked
statics
synching
te
uint
unselect
webp
EOF

$ codespell -w -q 3 -I ../godot-word-whitelist.txt --skip="./thirdparty,*.po"
$ git diff // undo unwanted changes
```
2022-01-07 00:14:54 +01:00
bruvzg 6f81a8ee2c
Fix multiple missing UTF-8 decoding.
(cherry picked from commit c69e0d16bc)
2022-01-06 21:44:40 +01:00
Rémi Verschelde 5fa1961ee3
Merge pull request #56369 from Rubonnek/expose-string-join 2022-01-06 15:14:18 +01:00
Haoyu Qiu df527b37d5 Unify similar method descriptions
Notably:

* `Pool*Array.size()` and `Array.size()`.
* Shared methods of `Transform2D` and `Transform`.
* Shared methods of `Vector2` and `Vector3`.

This reduces the Deja Vu when translating the class reference :)
2022-01-06 19:49:05 +08:00
Rémi Verschelde 8f17a4037b
Merge pull request #56466 from Chaosus/vs_uniform_hints_3.x 2022-01-06 09:39:27 +01:00
Wilson E. Alvarez 4106f95f30
Expose autotile_coord parameter in TileMap.set_cellv 2022-01-05 21:24:35 -05:00
kobewi 2dc30888bf
Fix get_v_scroll() desctiption in ItemList
(cherry picked from commit f97ab4a0e4)
2022-01-06 00:28:05 +01:00
Lertsenem 942f15fa4e
Fix error in Vector2.reflect() description
The description was probably copied from Vector3.reflect(), and
unfortunately did not match the 2D behaviour (where n is apparently the
direction vector of the symmetry line, not the normal).

(cherry picked from commit e1bf428cdc)
2022-01-06 00:23:59 +01:00
Hugo Locurcio 8d3e16676d
Document keyboard ghosting caveats in Input and InputEvent
This also adds recommendations for choosing between
`is_physical_key_pressed()` and `is_key_pressed()`.

(cherry picked from commit d01e22f187)
2022-01-06 00:21:37 +01:00
skyace65 098a8dab0d
Add warning to only use convex hull points when setting the point property for convex polygon shape
(cherry picked from commit 6b18614de7)
2022-01-06 00:21:36 +01:00
skyace65 ea637f641e
State that get static memory usage only works in debug
(cherry picked from commit 32b4edbe4e)
2022-01-06 00:21:36 +01:00
skyace65 97695d3796
Improve mouse input event class reference
(cherry picked from commit 37dfe5c706)
2022-01-06 00:21:36 +01:00
Hugo Locurcio 299d277c9c
Warn when using GPU-based particles on macOS due to low performance
On macOS, Particles rendering is much slower than CPUParticles
due to transform feedback being implemented on the CPU instead
of the GPU.
2022-01-06 00:10:32 +01:00
Rémi Verschelde 91c5a336e8
Merge pull request #55718 from bruvzg/oversampling_override 2022-01-06 00:07:48 +01:00
Jake Young 09bc9eb101
Backport NavigationServer with RVO2 to `3.x`
Change the entire navigation system.
Remove editor prefix from nav mesh generator class. It is now used for baking
at runtime as well.
Navigation supports obstacle avoidance now with the RVO2 library.
Nav system will also automatically link all nav meshes together to form one
overall complete nav map.
2022-01-05 16:00:56 +01:00
Hugo Locurcio ccd8cdc363
Improve the CanvasItem class documentation 2022-01-05 02:04:44 +01:00
Hugo Locurcio 73ec2c6ece
Improve the CameraServer and CameraFeed class documentations
This closes https://github.com/godotengine/godot-docs/issues/3255.
2022-01-04 19:25:50 +01:00
Max Hilbrunner c44de001de
Merge pull request #56395 from aaronfranke/3.x-doc-midi
[3.x] Document InputEventMIDI and add some missing 0xF MIDI messages
2022-01-04 18:28:16 +01:00
Rémi Verschelde 25369acff9
Merge pull request #51708 from Calinou/viewport-add-32bpc-color-depth 2022-01-04 14:30:24 +01:00
Aaron Franke da88e42f16
[3.x] Document InputEventMIDI and add some missing 0xF MIDI messages 2022-01-04 05:30:15 -08:00
Max Hilbrunner 1ffcd7b92a
Merge pull request #56150 from snailrhymer/patch-2
[3.x] Fix descriptions of `set_cell` and `set_cellv` in TileMap.xml
2022-01-04 14:04:48 +01:00
Max Hilbrunner 7fae8f6828
Merge pull request #56152 from belzecue/patch-4
Update CharFXTransform: explain "relative index"/"absolute index"
2022-01-04 13:56:07 +01:00
Max Hilbrunner 5083901561
Merge pull request #56378 from Calinou/doc-spatialmaterial-flowmap-format
Document the expected format of anisotropy flowmaps in SpatialMaterial
2022-01-04 13:48:37 +01:00
Yuri Roubinsky 5b0fe7880e [3.x] Add hints and default values to the uniform nodes in visual shader 2022-01-03 22:59:10 +03:00
Max Hilbrunner 08ce24a3c4
Merge pull request #56234 from timothyqiu/3.x-at-tool-script
Use `tool` instead of `@tool` in 3.x documentation
2022-01-02 03:09:09 +01:00
Max Hilbrunner 40f7dcbc7e
Merge pull request #56241 from KoBeWi/r3gist3r_b3for3_us3
[3.x] Improve docs about plugin registration
2022-01-02 03:08:02 +01:00
Hugo Locurcio 9937f7f50d
Document the expected format of anisotropy flowmaps in SpatialMaterial 2021-12-31 17:29:03 +01:00
Wilson E. Alvarez d03b82cde7
Expose String::join over to GDScript 2021-12-30 21:27:18 -05:00
Hugo Locurcio ae918c3041
Use asynchronous shader compilation and cache in the editor if requested
This provides more consistent behavior between the editor and running
project.
2021-12-31 02:20:29 +01:00
Yuri Sizov d9bf3e5e35 Fix return type for the exposed EditorResourcePicker method 2021-12-29 21:57:14 +03:00
kobewi 4fc795194b Improve docs about plugin registration 2021-12-25 16:55:03 +01:00
Haoyu Qiu 7b83b5ea3c Use tool instead of at-tool in 3.x documentation 2021-12-25 10:56:34 +08:00
Haoyu Qiu bb1eb84da4 Alpha channel indicates opacity, not transparency 2021-12-24 16:52:32 +08:00
belzecue 89cebd79e8
Update CharFXTransform: explain "relative index"/"absolute index" (previously identical)
Confusingly, these two properties had identical descriptions even though they measure different things.

"relative_index" measures character count from the custom effect's bbcode opening tag.
"absolute_index" measures character count from the start of the bbcode text that includes the custom effect.

See the code author's own explanation here: https://github.com/godotengine/godot/pull/23658

NOTE: Doco for CharFXTransform.xml has changed significantly in 4.0, where terminology has changed to "glyph".  Therefore, proposing this change for 3.x branch only.
2021-12-22 14:17:47 +08:00
snailrhymer 73f4531c97
Fix descriptions of set_cell and set_cellv in TileMap.xml
Swap the first lines of the descriptions for set_cell and set_cellv to correctly describe which accepts x and y as separate arguments and which accepts a Vector2.

Fix not relevant to master branch due to changes to TileMap.
2021-12-22 02:37:12 +00:00
Haoyu Qiu e40bb68c05
Add / to the unix shortcut drive list
Also made `get_current_drive()` to pick the longest match on Unix.

(cherry picked from commit 67f04b381b)
2021-12-21 12:11:14 +01:00
cdemirer 8e29a37800
Clarify that replace_by keeps child nodes in tree
(cherry picked from commit 98a3948bf9)
2021-12-21 12:11:14 +01:00
kobewi 4f284893a6
Document get_minimum_size not called in some nodes
(cherry picked from commit 7d5ee8f694)
2021-12-21 12:11:14 +01:00
Micky 9fc2bc6cf2
Various improvements to Camera2D's documentation
A summary of the tweaked descriptions:
* "get_camera_position()" is explains what the camera position is, and mitigates the confusion between this method and Node2D.position;
* "get_camera_screen_center()" links to the "get_camera_position" method;
* "reset_smoothing()" links to the "smoothing_enabled" propriety;

* "drag_horizontal_offset" and "drag_vertical_offset" link to their respective _enabled_ properties;
* "limit_smoothed" links to the "smoothing_enabled" propriety;
* "rotating" clarifies that the camera _view_ rotates when enabled.

Partially closes https://github.com/godotengine/godot-docs/issues/5417, as some of the issues described are no longer present in 4.0, or are not fully solved in this PR.

Further tweaks are welcome, as I'm afraid this could be a too verbose. A few of these could be split into their PR if necessary.

(cherry picked from commit 6cf2623a20)
2021-12-21 12:11:14 +01:00
bruvzg 59085d5051
[Windows] Improve console handling and execute.
Always build with the GUI subsystem.
Redirect stdout and stderr output to the parent process console.
Use CreateProcessW for blocking `execute` calls with piped stdout and stderr (prevent console windows for popping up when used with the GUI subsystem build, and have more consistent behavior with non-blocking calls).
Add `open_console` argument to the `execute` to open a new console window (for both blocking and non-blocking calls).
Remove `interface/editor/hide_console_window` editor setting.
Remove `Toggle System Console` menu option.
Remove `set_console_visible` and `is_console_visible` functions.
2021-12-18 10:13:27 +02:00
Haoyu Qiu d99a313fd3 Fix font preview text color on light background 2021-12-18 00:34:54 +08:00
bruvzg b4ec1c5817
Backport: Allow for mapping scancodes to current layout
Co-authored-by: Frixuu <kontakt@lukasz.xyz>
2021-12-17 13:04:47 +02:00
kobewi bf99f09e14
Mention what happens if find_node() fails
(cherry picked from commit e7722a9a7b)
2021-12-17 00:14:50 +01:00
Rémi Verschelde a90cac7ba4
Merge pull request #55988 from timothyqiu/http-proxy-3.x 2021-12-16 13:09:07 +01:00
Haoyu Qiu 1cada6bfa9 Add proxy support for `HTTPClient` and the editor
* Adds proxy related methods for `HTTPClient` and `HTTPRequest`
* Adds `network/http_proxy/{host,port}` editor settings
* Makes AssetLib and Export Template Manager proxy aware
2021-12-16 19:38:53 +08:00
Haoyu Qiu c11b1850c4 Make `--doctool` locale aware
* Adds `indent(prefix)` to `String`
* Moves the loading of tool/doc translation into
  `editor/editor_translation.{h,cpp}`
* Makes use of doc translation when generating XML class references, and
  setup the translation locale based on `-l LOCALE` CLI parameter.

The XML class reference won't be translated if `-l LOCALE` parameter is
not given, or when it's `-l en`.
2021-12-16 18:27:32 +08:00
Haoyu Qiu b225fec1de Fix indentations in class reference XMLs 2021-12-15 22:40:19 +08:00
Max Hilbrunner 97ea2ba78c
Merge pull request #55668 from Calinou/doc-physics-ticks-per-rendered-frame-3.x
Document physics simulation being limited to 8 ticks per rendered frame
2021-12-15 03:44:49 +01:00
Max Hilbrunner ee3e3df539
Merge pull request #55772 from Calinou/doc-texturearray-srgb
Document sampling a TextureArray with sRGB -> linear conversion
2021-12-15 03:42:16 +01:00
Max Hilbrunner 1fd0f69050
Merge pull request #55832 from Calinou/doc-reflectionprobe-3.x
Improve the ReflectionProbe class documentation (3.x)
2021-12-15 03:23:51 +01:00
Rémi Verschelde 4d709b71de
Merge pull request #55690 from akien-mga/3.x-scene-tree-doc-font-oversampling 2021-12-14 17:33:00 +01:00
Ryan Roden-Corrent 22fb04bddf
Document how to autoscroll ScrollContainer.
It is not uncommon to want to scroll to the most recently added child of
a ScrollContainer (e.g. a chat box or activity log). This is a little
tricky, since `ensure_control_visible` will not work on a node on the
same frame as you add it. Let's at least document that you need to wait
until the next frame.

Relates to https://github.com/godotengine/godot-proposals/issues/3629.

Backport of https://github.com/godotengine/godot/pull/55609.

Co-authored-by: Yuri Sizov <pycbouh@users.noreply.github.com>
2021-12-14 06:51:05 -05:00
Rémi Verschelde dd122e2971
Merge pull request #55827 from Calinou/doc-viewport-upside-down 2021-12-12 21:04:55 +01:00
lawnjelly b8d3d97b6a Visibility Notifier / Enabler classref mention Portals
Fixes the classref to show that these do not take account of occlusion except when using Portals.
2021-12-11 18:50:01 +00:00
Hugo Locurcio 2fbf880912
Improve the ReflectionProbe class documentation 2021-12-11 19:10:30 +01:00
Hugo Locurcio 6b26012284
Document Viewports rendering upside-down by default
This was fixed in `master`, but the default behavior can't be changed
in `3.x` for compatibility reasons.
2021-12-11 16:56:44 +01:00
Steve Szilágyi 285b816f1f
VehicleWheel can now return the surface it's colliding with.
Fixed PR issues.

Update vehicle_body_3d.cpp

Apply suggestions from code review

Co-authored-by: Camille Mohr-Daurat <pouleyKetchoup@gmail.com>
(cherry picked from commit 0c352407d8)
2021-12-10 19:01:06 +01:00
Anilforextra 9351bc4b1c
Fixed awkwardly named AnimatedSprite Setters.
(cherry picked from commit 0c06ed98fb)
2021-12-10 17:57:39 +01:00
Rémi Verschelde fc7528b366
Merge pull request #55788 from RPicster/3.x-particles-random-start-color 2021-12-10 16:52:19 +01:00
Raffaele Picca 6dd593d579 Random initial color for all Particle Nodes 2021-12-10 16:35:25 +01:00
Rémi Verschelde c6a9a384a0
Merge pull request #55783 from timothyqiu/broken-doc-link
[3.x] Fix broken links in Class Reference
2021-12-10 15:51:17 +01:00
Haoyu Qiu b1153f8829 Fix broken links in Class Reference 2021-12-10 21:07:21 +08:00
Rémi Verschelde eac0d90c39
Merge pull request #55560 from pycbouh/docs-overridden-cross-linked-3.x
[3.x] Make overridden properties link to parent definition
2021-12-10 12:42:09 +01:00
Hugo Locurcio 491acf346d
Document sampling a TextureArray with sRGB -> linear conversion
This is required when sampling an albedo map from a texture array
in 3D. Otherwise, colors will look washed out.
2021-12-10 01:02:48 +01:00
Raul Santos 229489f7b7
Expose `ScriptEditor::edit` to scripting
Exposes a method in `EditorInterface` to open scripts on a specified
line and column. This method handles if the internal or the external
editor should be used.

(cherry picked from commit 9535831866)
2021-12-09 12:05:14 +01:00
bruvzg eb54676e0f
Add DynamicFontData oversampling override property. 2021-12-08 11:34:56 +02:00
Hugo Locurcio bfe77b8fab
Document physics simulation being limited to 8 ticks per rendered frame 2021-12-08 00:22:03 +01:00
Hugo Locurcio 2fe15124de
Document that RigidBody angular velocity is in degrees per second
This will be changed to radians per second in Godot 4.0, but it can't
be changed in 3.x to preserve compatibility with existing projects.
2021-12-07 18:38:03 +01:00
Rémi Verschelde 35b79284cc
SceneTree: Document font oversampling, remove warnings 2021-12-07 14:15:09 +01:00
Rémi Verschelde 643a9a3420
Merge pull request #55526 from pycbouh/docs-sort-group-newline-theme-and-enums-3.x 2021-12-07 12:14:48 +01:00
Rémi Verschelde 0845f20784
Merge pull request #55614 from Calinou/add-os-crash-method-3.x 2021-12-06 17:04:14 +01:00
Manolis Papadeas 3be071f8c6
Fix link to the supported image formats in the Image class
It previously linked to this page which doesn't exist. https://docs.godotengine.org/en/latest/getting_started/workflow/assets/importing_images.html#supported-image-formats

Now, it should link here: https://docs.godotengine.org/en/latest/tutorials/assets_pipeline/importing_images.html#supported-image-formats

(cherry picked from commit c01c4c687b)
2021-12-06 16:52:00 +01:00
kobewi 9776241ce6
Bind column_titles_visible as property
(cherry picked from commit 7f6ab0006d)
2021-12-06 16:52:00 +01:00
Aaron Franke d75e580765
Warn when using an AABB or Rect2 with a negative size
(cherry picked from commit 9687f6fca3)
2021-12-06 16:51:59 +01:00
Hugo Locurcio 796ea60d11
Document SceneTreeTimer being freed automatically when elapsed
The note was present in the SceneTree `create_timer()` class
documentation, but not in the SceneTreeTimer class documentation.
2021-12-05 18:39:10 +01:00
Hugo Locurcio 58296c7e21
Add an `OS.crash()` method for testing system crash handler
This makes it possible to test the system's crash handler without
having to modify engine code or exploit an engine bug.
2021-12-04 01:40:56 +01:00
Rémi Verschelde ade0e700f1
Merge pull request #55591 from RPicster/3.x-particlemat-ring-axis-fix
Fix Ring-Axis parameter being always visible
2021-12-03 21:38:16 +01:00
Raffaele Picca 2f69caaff3 Fix Ring-Axis parameter being always visible 2021-12-03 21:16:32 +01:00
Yuri Sizov 1cf6d21f69 Make overridden properties link to parent definition
Co-authored-by: Josh DeGraw <joshmdegraw@gmail.com>
2021-12-03 17:48:49 +03:00
kobewi ad5cb8ef5e
Improve store_string() description
(cherry picked from commit 09b1fc1956)
2021-12-03 12:19:47 +01:00
Marcel Admiraal e0729b9c79 Allow any kind of Mesh to be added to an EditorSpatialGizmo 2021-12-03 08:51:38 +00:00
Haoyu Qiu 144e3cd31f
Fix various misused code tag in classref
(cherry picked from commit 85c136bd07)
2021-12-02 17:31:16 +01:00
Rémi Verschelde 6f1fcdee0d
Merge pull request #49662 from kleonc/transforms-xform_inv-docs 2021-12-02 12:54:44 +01:00
Yuri Sizov ebd8101546 Sort and group theme properties in docs, improve formatting for theme and enums 2021-12-01 22:48:17 +03:00
janglee 0b327eb46e VCS: Add push, pull, fetch and improved diff view to VCS UI
This commit was created by merging the commits presented in #39255 for
the GSoC 2020 VCS Improvement project

VCS: Make EditorVCSInterface store less amount of internal state

VCS: Add force push checkbox + more frequent VCS updates

Add force push checkbox in the Commit dock. Also add some missing
opportunities for checking the VCS state again on from UI inputs

VCS: Fix script contents not being updated on merge conflict

VCS: Add branch creation VCS interface calls

VCS: Add VCS remote creation and remote selection menus

VCS: Show more commit information + Fix truncated commit offsets

VCS: Make VCS less noisy + Fix diff view refreshes

VCS: Fix mismatched argument names in VCS helpers

VCS: Add SSH transport support for remote operations

Also, moves the editor's VCS settings registrations to
project_settings.cpp and editor_settings.cpp

VCS: Change TTR() to vformat() for branch and remote removal text

VCS: Add VCS branch icon instead of using Tree node icon

Co-authored-by: @ChronicallySerious
2021-12-01 22:52:07 +05:30
Rémi Verschelde 6cf77f80b5
doc: Fixup Tabs reference after cherry-pick 2021-11-30 14:46:11 +01:00
zacryol 86190dd909
Clarify usage of TabContainer
Makes it more clear that TabBar is separate from TabContainer, and that the container draws the tabs itself.

(cherry picked from commit 5c645d510f)
2021-11-30 10:58:37 +01:00
Aaron Franke 035a84fe92
[3.x] Add a Time singleton 2021-11-29 11:00:06 -06:00
zacryol dd94440509
Fix description of Viewport `find_world_2d()` method.
The doc now states that the method searches for a World2D among ancestor Viewports as well, differentiating it from the get_world_2d() getter.

and also find_world_3d()

(cherry picked from commit 81c1d5197e)
2021-11-29 16:13:19 +01:00
Rémi Verschelde 0bf78feb46
Merge pull request #55416 from pycbouh/textedit-position-from-linecol-3.x 2021-11-29 14:28:35 +01:00
Yuri Sizov ba747e2a26 Add methods to get position from column and line in TextEdit 2021-11-29 00:06:16 +03:00
Aaron Franke 1d8cef8236
[3.x] Backport some APIs in math structs 2021-11-27 01:19:45 -06:00
kobewi de365200bb
Clarify get_indexed in relation to Nodes
(cherry picked from commit 4ea6709558)
2021-11-25 22:48:20 +01:00
Hugo Locurcio f6725f8089
Document the engine's use of internal groups in Node
(cherry picked from commit f8d9e4afdb)
2021-11-25 22:24:12 +01:00
kobewi a7d950ab8e
Mention that replace_by doesn't free the node
(cherry picked from commit 58a3ea5453)
2021-11-25 22:20:27 +01:00
bruvzg 2ef2879d7b
Add Input.is_physical_key_pressed method.
(cherry picked from commit 9877d91c4a)
2021-11-25 22:19:33 +01:00
Rémi Verschelde 888f8cea9f
Merge pull request #52457 from kleonc/image-fill-rect-3x 2021-11-24 16:34:15 +01:00
Hugo Locurcio e5593212e2
Add a project setting to disable the boot splash image
This allows disabling the boot splash image while keeping the
background color.
2021-11-23 19:06:54 +01:00
kleonc 4f446c8b9e Add Image::fill_rect method 2021-11-23 17:59:08 +01:00
Camille Mohr-Daurat 3970f28f67
Merge pull request #55096 from lawnjelly/bvh_expanded_leaf
BVH - add option for expanded AABBs in leaves
2021-11-22 09:37:16 -07:00
Haoyu Qiu eb6f74855f Allow toggle TextEdit bookmark gutter 2021-11-21 21:34:30 +08:00
Brian Semrau 04846156c3
Expose Thread::get_main_id in core bindings
(cherry picked from commit c558263d84)
2021-11-20 11:48:09 +01:00
lawnjelly 211dc8cd2d BVH - add option for expanded AABBs in leaves
This PR adds a define BVH_EXPAND_LEAF_AABBS which is set, which stores expanded AABBs in the tree instead of exact AABBs.

This makes the logic less error prone when considering reciprocal collisions in the pairing, as all collision detect is now taking place between expanded AABB against expanded AABB, rather than expanded AABB against exact AABB.

The flip side of this is that the intersection tests will now be less exact when expanded margins are set.

All margins are now user customizable via project settings, and take account of collision pairing density to adjust the margin dynamically.
2021-11-20 06:45:12 +00:00
kobewi 70d25bbfbb
Mention how to add margins to Button's icon
(cherry picked from commit 2341c7bbd9)
2021-11-17 15:56:23 +01:00
Rémi Verschelde 4103b0b7d8
Merge pull request #50823 from fbcosentino/3d-material-overlay 2021-11-16 08:21:18 +01:00
Fernando Cosentino cc8846bef6 Added material_overlay property to MeshInstance
Applying overlay materials into multi-surface meshes currently
requires adding a next pass material to all the surfaces, which
might be cumbersome when the material is to be applied to a range
of different geometries. This also makes it not trivial to use
AnimationPlayer to control the material in case of visual effects.
The material_override property is not an option as it works
replacing the active material for the surfaces, not adding a new pass.

This commit adds the material_overlay property to GeometryInstance
(and therefore MeshInstance), having the same reach as
material_override (that is, all surfaces) but adding a new material
pass on top of the active materials, instead of replacing them.

Implemented in rasterizer of both GLES2 and GLES3.
2021-11-15 23:50:34 +00:00
Rémi Verschelde ca61752a8c
Merge pull request #54982 from Calinou/doc-surfacetool-append-from-thread 2021-11-15 22:47:14 +01:00
Rémi Verschelde 89792e5c49
Merge pull request #54921 from lawnjelly/portals_roaming_margin 2021-11-15 22:45:46 +01:00
Rémi Verschelde 3ac2999f22
Replace Godot docs URL with `$DOCS_URL` in XML class reference 2021-11-15 17:22:47 +01:00
kobewi 7f91cbc397
Expose String.get_slice
(cherry picked from commit e5725c7deb)
2021-11-15 17:22:46 +01:00
Benjamin Armstrong 77add76a16
Clarify how 'audio/driver/output_latency' project setting works
(cherry picked from commit 1e485a7da8)
2021-11-15 16:10:00 +01:00
Rémi Verschelde 9ef3fec87f
Rect2: Clarify docs for `has_point` excluding bottom and right borders
Improve tests, as well as documentation for `expand`.

(cherry picked from commit 36c4451a7b)
2021-11-15 16:10:00 +01:00
Hugo Locurcio 194d45f11d
Improve the GIProbe and BakedLightmap class documentation
This adds information about performance and procedural generation.
2021-11-14 23:47:19 +01:00
Hugo Locurcio f39375d315
Document low performance when using `SurfaceTool.append_from()` in thread 2021-11-14 22:46:42 +01:00
lawnjelly 788f075b44 Portals - Allow user to set roaming expansion margin
Previously a crude metric was used to decide on the roaming expansion margin, but it created unexpected results in some scenarios. Instead this setting is exposed to the user via the RoomManager, allowing them to tailor it to the world size, room sizes, roaming objects sizes and the speeds of movement.
2021-11-12 15:46:04 +00:00
Haoyu Qiu 936832d59c Add methods to remove theme overrides 2021-11-11 18:23:37 +08:00
boruok 30d22305e1 fixed typo in NavigationPolygon doc 2021-11-11 14:29:19 +09:00
Hendrik Brucker 97074dcf95 Add GradientTexture2D
Co-authored-by: Mariano Javier Suligoy <marianognu.easyrpg@gmail.com>
Co-authored-by: Andrii Doroshenko <xrayez@gmail.com>
2021-11-10 19:00:40 -07:00
Rémi Verschelde fee83d02cc
Merge pull request #54848 from Calinou/mono-move-exception-policy-setting-3.x 2021-11-10 22:07:00 +01:00
Hugo Locurcio 4c88a82f50
Move Mono unhandled exception setting to be located within a subsection
Settings that aren't within a subsection are difficult to reach when
other settings do have a subsection.

This also adds documentation for the project setting.
2021-11-10 20:57:35 +01:00
PouleyKetchoupp 1560c8b5aa Fix test_move reporting collision when touching another body
Reporting rest collision information is needed for move_and_collide and
move_and_slide so floor detection can be done properly, but in the case
of just testing the motion for collision, it makes sense to return false
if the body is able to move all along the path without being stopped.

Updated the logic in test_move and clarified the documentation for
test_move and move_and_collide.
2021-11-10 11:07:32 -07:00
PouleyKetchoupp b93aeec4a2 Fix errors in KinematicBody when floor is destroyed or removed
In all physics servers, body_get_direct_state() now silently returns
nullptr when the body has been already freed or is removed from space,
so the client code can detect this state and invalidate the body rid.

In 2D, there is no change in behavior (just no more errors).

In 3D, the Bullet server returned a valid direct body state when the
body was removed from the physics space, but in this case it didn't
make sense to use the information from the body state.
2021-11-09 15:15:40 -07:00
Pedro J. Estébanez 4c710780d4 Implement async shader compilation plus caching for GL ES 3
Async. compilation via ubershader is currently available in the scene and particles shaders only.

Bonus:
- Use `#if defined()` syntax for not true conditionals, so they don't unnecessarily take a bit in the version flagset.
- Remove unused `ENABLE_CLIP_ALPHA` from scene shader.
- Remove unused `PARTICLES_COPY` from the particles shader.
- Remove unused uniform related code.
- Shader language/compiler: use ordered hash maps for deterministic code generation (needed for caching).
2021-11-09 12:19:12 +01:00
Rémi Verschelde 4b4e92b3d4
Merge pull request #52944 from RandomShaper/property_pin_control_natural_3.x 2021-11-08 18:53:25 +01:00
Pedro J. Estébanez 4dba25b3ff Add property value pinning 2021-11-08 17:42:27 +01:00
Rémi Verschelde ee46679ca3
Merge pull request #54577 from nekomatata/intersect-point-3d-3.x 2021-11-08 13:16:14 +01:00
Max Hilbrunner 73cb77c62c
Merge pull request #54623 from gongpha/3.x-typo1
Fix little typos in `OS` 3.x doc
2021-11-06 17:35:45 +01:00
Rémi Verschelde 965f7a6df9
Merge pull request #54607 from nekomatata/fix-intersect-shape-motion-3.x 2021-11-05 21:53:06 +01:00
Rémi Verschelde 14c366ddd7
Bump version to 3.5-beta 2021-11-05 16:10:17 +01:00
Kongfa Waroros 0d852bf5a6 Fix little typos in 3.x doc 2021-11-05 16:23:37 +07:00
Hugo Locurcio 231883bdcc
Improve description for `BitMap.grow_mask()`
(cherry picked from commit e3d23d444c)
2021-11-04 19:55:56 +01:00
PouleyKetchoupp 160346f794 Add support for motion in 2D intersect_shape function
It was only missing extended rect for broadphase check, the solver was
already taking the motion from parameters into account.
2021-11-04 11:43:30 -07:00
Gustavo Beltrão Braga 27ec7e6ed5
Change description of relative field in input drag event.
(cherry picked from commit 76c50928a1)
2021-11-04 16:35:20 +01:00
PouleyKetchoupp fc2bd63ca0 Expose intersect_point in 3D physics server
Also cleaned a few things in the documentation for 2D.
2021-11-03 16:46:40 -07:00
Yuri Sizov 5ff11a2c5c Add a flag to EditorResourcePicker to differentiate selection contexts 2021-11-02 14:15:14 +03:00
Omar El Sheikh 203295f17d Added Mesh Compression Import Options
Fleshed out the "Optimize Mesh" options found in the mesh import UI
Gave a checkbox to every vertex attribute that can be compressed

Surfaced option to enable/disable Octahedral compression for
normal/tangent vectors

Also surfaces the vertex position compression option which previously
inaccessible because the defaults did not compress vertex positions

Supports all current importers (obj, fbx, collada, gltf)
2021-11-01 12:54:28 -04:00
Yuri Sizov 7fe0dab69b Add focus font color to Button and derivatives 2021-10-26 17:40:51 +03:00
skyace65 c1709e8177
Improve area method descriptions
(cherry picked from commit 4dd8ab745a)
2021-10-26 13:34:36 +02:00
Hugo Locurcio 1806661462
Only show relevant properties in the DirectionalLight inspector
Some split distance properties are unused depending on the
current shadow mode. Also, Blend Splits and Bias Split Scale can
only be used if the shadow mode is PSSM 2 Splits or PSSM 4 Splits.
2021-10-25 22:08:47 +02:00
Rémi Verschelde 6e141e8688
Merge pull request #54229 from akien-mga/3.x-ios-disable-high-float 2021-10-25 20:57:48 +02:00
Hugo Locurcio 059ba23f72
Document `Image.FORMAT_R8` stores in alpha channel instead in GLES2 2021-10-25 16:52:58 +02:00
Rémi Verschelde bc0d18d8d5
GLES2: Disable half float on iOS via platform override
This can be changed back by setting
`rendering/gles2/compatibility/disable_half_float.iOS` to false.

Fixes #31907.
2021-10-25 16:25:56 +02:00
Hugo Locurcio 31ad99072f
Allow changing directional shadow size at run-time
Factoring out the directional shadow creation code allows calling it
at any time. This works in both GLES3 and GLES2.
2021-10-23 22:04:59 +02:00
Pedro J. Estébanez beb99fe54b
Expose Input::flush_buffered_events()
(cherry picked from commit 6dc3fae201)
2021-10-23 12:02:48 +02:00
SeleckyErik 98c0ffb749 Add BAKE_ERROR_NO_ROOT to BakedLightmap
Add new error type to BakeError to signalise that there is no root node to
start baking from.
Document the new error type, as well as BAKE_ERROR_NO_LIGHTMAPPER.
2021-10-21 13:32:03 +02:00
Rémi Verschelde 90f8cd89a7
Merge pull request #50560 from noidexe/patch-1 2021-10-18 23:01:52 +02:00
Rémi Verschelde c743649c0b
Merge pull request #53742 from DmitriySalnikov/exposed_sensor_setters 2021-10-18 23:01:07 +02:00