Commit Graph

5850 Commits

Author SHA1 Message Date
Pawel Lampe 88d3f14697 Add ability to `bake_navigation_mesh` off thread.
This feature makes it possible to workaround problems such as:
 - long baking time due to heavy synchronization when parsing geometry
   from mesh instances
 - crash when freeing `NavigationMeshInstance` while baking
 - errors when actively baking node tree is being detached from the
   scene tree
2022-05-04 23:00:18 +02:00
Rémi Verschelde 38a922a365
Merge pull request #60740 from KoBeWi/postapo_frame_draw 2022-05-04 20:37:51 +02:00
Rémi Verschelde 84f64ddde9
Merge pull request #60723 from reduz/refactor-module-initialization 2022-05-04 19:08:43 +02:00
reduz de0ca3b999 Refactor module initialization
* Changed to use the same stages as extensions.
* Makes the initialization more coherent, helping solve problems due to lack of stages.
* Makes it easier to port between module and extension.
* removed the DRIVER initialization level (no longer needed).
2022-05-04 17:34:51 +02:00
Rémi Verschelde 3ac1c8e9f3
Merge pull request #60731 from KoBeWi/action_editor
Clarify InputMap.action_get_events() in the editor
2022-05-04 09:03:21 +02:00
kobewi 708a3b3db8 Improve Viewport.get_texture() description 2022-05-04 02:30:32 +02:00
mdavisprog f3c1232c59 Add OS::is_process_running function.
Adds the is_process_running function to the native OS class and exposes it to script.

This is implemented on Windows and Unix platforms. A stub is provided for other platforms that do not support this function.

Documentation is updated to reflect new API function.
2022-05-03 17:27:17 -07:00
kobewi 5235584066 Clarify InputMap.action_get_events() in the editor 2022-05-03 19:45:50 +02:00
reduz 0a57f964a3 Implement missing Node & Resource placeholders
Implemented by request of @neikeq to advance in the GDExtension version of Mono.

* If a Resource type is missing upon load, it will be remembered together with its data (Unless manually overriden).
* If a Node type is missing upon load, it will be also be remembered together with its data (unless deleted).

This feature makes working with GDExtension much easier, as it ensures that missing types no longer cause data loss.
2022-05-03 17:08:09 +02:00
Rémi Verschelde b239275989
Merge pull request #60583 from reduz/placeholder-assets 2022-05-03 16:43:13 +02:00
Rémi Verschelde 8aa791d166
Merge pull request #59321 from Calinou/primitive-meshes-csg-tweak-default-sizes
Decrease default sizes of some primitive and CSG meshes for consistency
2022-05-03 15:19:30 +02:00
Rémi Verschelde 6530d46d67
Merge pull request #51102 from Calinou/renderingserver-add-api-version-getter
Add `get_video_adapter_api_version()` to RenderingServer
2022-05-03 14:44:55 +02:00
Rémi Verschelde 77c9138e72
Merge pull request #24402 from guilhermefelipecgs/state_machine_improvement
Improvements to AnimationNodeStateMachine
2022-05-03 14:25:30 +02:00
Rémi Verschelde 3614492dd3
Merge pull request #60644 from PureAsbestos/master 2022-05-03 11:37:15 +02:00
Hugo Locurcio 31194f5b1c
Add `get_video_adapter_api_version()` to RenderingServer
This method can be used to get the graphics API version currently in
use (such as Vulkan). It can be used by projects for troubleshooting
or statistical purposes.
2022-05-03 01:18:35 +02:00
Guilherme Felipe e7056c195d Improvements of state machine
- Open the menu to add new animation nodes by dragging the transitions to
empty areas and automatically connecting them.
- Adds box selection to the state machine.
- Add feature to group/ungroup selected nodes in a "sub" state machine.
- Add start/end node by default. In addition, add new color to these
nodes to differentiate then.
- Add tooltip for transitions to show the connection "from -> to".
- Add new "type" of transition line when multiple transitions are
grouped.
- Add popup to connect nodes in sub state machine.
- Add dialog to select which nodes can be deleted when they are grouped.
- Add classes:
	AnimationNodeStartState
	AnimationNodeEndState
	EditorAnimationMultiTransitionEdit
- Implements disabled transition

API Changes:
- Now it's posible to add transitions between state machines,
`AnimationNodeStateMachine::add_transition` will works with relative path,
this means you can use it like this `add_transition("Idle", "Walk", tr)`
or `add_transition("Idle", "StateMachine/Shoot)`.
2022-05-02 13:06:36 -03:00
Marcel Admiraal 97e87a2daf Fix screen_get_usable_rect returning display safe area 2022-05-02 09:31:32 +02:00
Rémi Verschelde bc7ccc909b
Merge pull request #60551 from madmiraal/implement-3466
Add a method for obtaining display cutouts on Android
2022-05-02 07:56:41 +02:00
Rémi Verschelde 4e06ce7840
Merge pull request #60655 from smix8/navigation_region_rid_4.x
Add get_region_rid() to NavigationRegion2D and NavigationRegion3D
2022-05-01 14:17:40 +02:00
Rémi Verschelde 122fa74f6c
Merge pull request #60650 from bruvzg/lbl_n_spr_z_order 2022-04-30 16:32:32 +02:00
bruvzg 0a0e94d996
Expose Label3D and Sprite*3D material render priority properties. 2022-04-30 15:09:30 +03:00
smix8 05d06b8957 Add get_region_rid() NavigationRegion2D and NavigationRegion3D
Add get_region_rid() to NavigationRegion2D and NavigationRegion3D
2022-04-30 13:27:30 +02:00
Rémi Verschelde f131ec336b
Merge pull request #60614 from timothyqiu/lerp-angle-doc 2022-04-30 13:25:04 +02:00
Haoyu Qiu 492903a0b2 Document lerp_angle behavior when angles are approximately PI apart 2022-04-30 19:02:21 +08:00
Rémi Verschelde e619e0e4d4
Merge pull request #59419 from Calinou/doc-basematerial3d-detail 2022-04-30 10:49:36 +02:00
Hendrik Brucker 6d876baf60 Improve the VisualShader/VisualScript editor UI 2022-04-30 03:56:57 +02:00
PureAsbestos a89b3f872d Change 'throws an error' to 'prints an error' in classref 2022-04-29 19:20:46 -05:00
Rémi Verschelde 7d999b7507
Merge pull request #59411 from Calinou/doc-tonemap
Improve documentation for tonemapping operators
2022-04-29 23:14:29 +02:00
Hugo Locurcio 91f9a48ada
Merge pull request #59418 from Calinou/doc-environment 2022-04-29 21:50:08 +02:00
Rémi Verschelde 0e98dbb19c
Merge pull request #60070 from Calinou/proceduralskymaterial-add-dithering
Add dithering to ProceduralSkyMaterial to combat banding
2022-04-29 20:28:11 +02:00
kobewi 8187a777ce Small improvements to get_first_node_in_group() 2022-04-29 16:14:48 +02:00
Rémi Verschelde ce01bf22be
Merge pull request #60405 from CheetoMonster/documentation-edits
BoxContainer description to point to the "Using Containers" page
2022-04-29 08:04:32 +02:00
bruvzg be2ee9d277
[Label3D] Add offset property. 2022-04-28 21:23:15 +03:00
Rémi Verschelde 5a4e478b0f
Merge pull request #58599 from Calinou/styleboxflat-add-skew
Add a Skew property to StyleBoxFlat
2022-04-28 18:32:01 +02:00
Haoyu Qiu 6c01ef8f4c Miscellaneous Tween fixes 2022-04-28 21:19:01 +08:00
bruvzg 6ab672d1ef Implement text-to-speech support on Android, iOS, HTML5, Linux, macOS and Windows.
Implement TextServer word break method.
2022-04-28 14:35:41 +03:00
reduz b02c7387c7 Implement placeholder assets
* Placeholder textures
* Placeholder meshes
* Placeholder material

This PR is the first step towards implementing https://github.com/godotengine/godot-proposals/issues/2756
It adds an asset type that uses no resources, which can be used to replace the existing ones on export for using on the upcoming server export.
2022-04-28 12:19:01 +02:00
Chris verBurg 3b941ed98c Link to Container tutorial
Users happening across any of the Container pages may not already know the intent of Containers, or which others are available.  This commit adds a link to the existing "GUI containers" page in their tutorials sections.
2022-04-28 00:22:43 -07:00
Hugo Locurcio 53b8899be9
Decrease default sizes of some primitive and CSG meshes for consistency 2022-04-27 22:45:38 +02:00
Rémi Verschelde 3e9ead05f2
Merge pull request #58685 from IgorKordiukiewicz/gpu_particles_2d_interpolation_property
Added interpolation property to GPUParticles2D
2022-04-27 13:58:41 +02:00
Rémi Verschelde 6e6fe2b025
Merge pull request #59582 from Faless/net/4.x_tcp_explicit_poll 2022-04-27 13:56:58 +02:00
Rémi Verschelde 1de51133c9
Merge pull request #60331 from KoBeWi/tween_static() 2022-04-27 13:20:11 +02:00
Rémi Verschelde a680493397
Merge pull request #60275 from octetdev2/prefer-constant-for-docs 2022-04-27 12:19:08 +02:00
Rémi Verschelde d22850234c
Merge pull request #59393 from techiepriyansh/move-gltf-export-under-scene-menu 2022-04-27 11:51:49 +02:00
Rémi Verschelde 2890ac7100
Merge pull request #60319 from TokageItLab/implement-global-rest 2022-04-27 11:06:42 +02:00
Rémi Verschelde 8dfa12cae7
Merge pull request #59979 from bruvzg/cpp_check2 2022-04-27 10:08:26 +02:00
Rémi Verschelde 74ae1ec545 doc: Update iOS hint for Input.vibrate_handheld after #60397 2022-04-27 09:45:44 +02:00
kobewi b80e52f048 Expose move_to_trash() 2022-04-27 01:02:11 +02:00
Rémi Verschelde e9e2aaf812
Merge pull request #60513 from Calinou/default-font-add-msdf-mipmap
Add MSDF and mipmap generation project settings for the default font
2022-04-26 22:39:55 +02:00
Fabio Alessandrelli aee2240d5f [Net] Allow branch-specific MultiplayerAPIs.
Removes custom_multiplayer from Node.
MultiplayerAPI overrides are now set at SceneTree level, and apply to
whole branches.
Impact on performance when using only the default multiplayer or
overriding it is minimal, the use of branches can likely be further
optimized by caching nodes and relevant MultiplayerAPI IDs.
2022-04-26 17:22:54 +02:00
Marcel Admiraal 71ce5857ec Add a method for obtaining display cutouts on Android 2022-04-26 13:51:21 +02:00
Rémi Verschelde 06c33cca18
Merge pull request #60511 from akien-mga/readd-find_node 2022-04-26 09:42:19 +02:00
Rémi Verschelde bef00b2b0d
Merge pull request #60445 from nathanfranke/minor-changes
small changes: improve OS.get_name classref, misc/scripts fixes, remove trailing quote
2022-04-25 23:10:48 +02:00
Rémi Verschelde 3e1df91ca6
Merge pull request #60450 from timothyqiu/packed-array-doc
Remove `Array` link in description of `Packed*Array`
2022-04-25 23:05:18 +02:00
Rémi Verschelde baa0b4fdec i18n: Sync classref translations with Weblate
(cherry picked from commit 4c68304e2f)
2022-04-25 17:19:45 +02:00
Rémi Verschelde ac4e322ac8
Merge pull request #60472 from KoBeWi/dragging_rights 2022-04-25 16:56:57 +02:00
Rémi Verschelde df4de306a9
Merge pull request #60490 from aaronfranke/dap-typo 2022-04-25 16:51:09 +02:00
Hugo Locurcio 43c34bf611
Add MSDF and mipmap generation project settings for the default font
This can be used to improve Label3D and scaled Control appearance
in prototypes.
2022-04-25 16:47:44 +02:00
Rémi Verschelde 02bb8e948f
Merge pull request #60261 from fire-forge/theme-prop-renames 2022-04-25 16:20:19 +02:00
Rémi Verschelde 63a052d96b
Merge pull request #60386 from bruvzg/label3d 2022-04-25 15:51:31 +02:00
Rémi Verschelde 9c2ea7e296 Node: Re-add `find_node` as `find_child`, improve docs
The new name contrasts it better with `find_parent`, and makes it clear
that it only matches child/descendant nodes.

Also rename `find_nodes` to `find_children` accordingly.
2022-04-25 15:21:22 +02:00
Rémi Verschelde 7c7ce7dcd7
Merge pull request #60298 from reduz/scene-unique-paths 2022-04-25 13:38:08 +02:00
reduz 8580f377a3 Implement Scene Unique Nodes
Implements https://github.com/godotengine/godot-proposals/issues/4096

* Nodes can be marked unique to the scene in the editor (or via code).
* Unique nodes can be accessed via the **%** prefix at any point in the path. From that point in the path (depending on whether the scene of the path is), the unique node will be fetched.
* Implementation is very optimal, as these nodes are cached.
2022-04-25 12:19:17 +02:00
kobewi 31a23ab33f Improve descriptions for drag methods 2022-04-24 20:41:00 +02:00
Aaron Franke fb6aaacaed
Fix type name typo in Debug Adapter Protocol 2022-04-24 03:21:23 -05:00
FireForge 3073b85de9 Rename theme properties to include underscores
- check_vadjust -> check_v_adjust
- close_h_ofs -> close_h_offset
- close_v_ofs -> close_v_offset
- commentfocus -> comment_focus
- hseparation -> h_separation
- ofs -> offset
- selectedframe -> selected_frame
- state_machine_selectedframe -> state_machine_selected_frame
- table_hseparation -> table_h_separation
- table_vseparation -> table_v_separation
- vseparation -> v_separation
2022-04-23 11:16:18 -05:00
GTcreyon ce1fcfcff9 Changed "pair" to "triplet" in Vector3 definition 2022-04-23 12:15:14 +01:00
Haoyu Qiu 24febff2dc Remove Array link in description of PackedArrays 2022-04-23 11:06:02 +08:00
Nathan Franke 1304d72fc1
improve OS.get_name classref, misc/scripts fixes, remove trailing quote 2022-04-22 17:13:08 -05:00
bruvzg be611c1c05
Implement Label3D node.
Add "generate_mipmap" font import option.
Add some missing features to the Sprite3D.
Move BiDi override code from Control to TextServer.
Add functions to access TextServer font cache textures.
Add MSDF related flags and shader to the standard material.
Change standard material cache to use HashMap instead of Vector.
2022-04-22 12:08:46 +03:00
bruvzg de4c97758a
Fix more issues found by cppcheck. 2022-04-20 10:34:00 +03:00
Yuri Rubinsky f4b0c7a1ea
Merge pull request #60175 from Geometror/visual-shader-vector4 2022-04-20 08:33:42 +03:00
Hugo Locurcio 3ca4514866
Merge pull request #50175 from kleonc/image-blit-blend-fix-rects
`Image.blit_rect/blend_rect` Fix rects calculations for negative arguments
2022-04-19 16:30:08 +02:00
kobewi 3017530e26 Make Tween.interpolate_value() static 2022-04-17 23:13:39 +02:00
Silc 'Tokage' Renew 4d4ffa3a2c Implement global rest 2022-04-18 02:11:19 +09:00
Haoyu Qiu 1b891069cd Document timestamp decimal fraction in Time 2022-04-16 13:14:58 +08:00
Casper Beyer beb7a9debe Prefer constant tags for constants 2022-04-16 00:21:05 +08:00
Michael Alexsander bab2f3c021 Add `font_separator` and related properties to `PopupMenu` 2022-04-13 23:46:35 -03:00
Rémi Verschelde 321213d863
Merge pull request #60220 from YeldhamDev/the_line_must_be_drawn_here
Fix and tweak labeled separator in `PopupMenu`
2022-04-14 00:15:23 +02:00
Rémi Verschelde 970debed93
Merge pull request #60177 from reduz/animation-library-import
Import scenes as AnimationLibrary
2022-04-13 22:47:54 +02:00
Michael Alexsander 59c3d4e17f Fix and tweak labeled separator in `PopupMenu` 2022-04-13 17:13:29 -03:00
reduz 66009318e0 Import scenes as AnimationLibrary
Added the ability to import scenes as AnimationLibrary

* Completes implementation of https://github.com/godotengine/godot-proposals/issues/4296
* Helps if you want to export animations to a separate file (say a GLTF) to avoid re-importing/exporting them every time the model changes.
* Helps if you simply want to have animations using a dummy model, which can be shared across multiple models.

Creates a secondary scene importer used only for animations.

**NOTE**: A new flag for scene importer: EditorSceneFormatImporter.IMPORT_DISCARD_MESHES_AND_MATERIALS has been added, to hint importers that they should skip meshes and animations (and hence make importing faster). It is not implemented in any importer yet, this should be done in a separate PR.
2022-04-13 15:06:56 +02:00
Rémi Verschelde d27f60f0e8
Merge pull request #60199 from akien-mga/color-clarify-srgb-linear-conversions 2022-04-13 13:41:21 +02:00
Rémi Verschelde b06ac80f81
Merge pull request #60028 from LightningAA/Improve-Signal-Docs 2022-04-13 12:58:18 +02:00
Rémi Verschelde 9b89c07075
Merge pull request #60034 from Calinou/camera-allow-lower-size 2022-04-13 12:48:08 +02:00
Rémi Verschelde 46ef52162e Color: Rename `to_srgb`/`to_linear` to include base color space
This helps reduce confusion around sRGB <> Linear conversions by making
both input and output color spaces explicit.
2022-04-13 11:45:52 +02:00
Rémi Verschelde 8904731b8b
Merge pull request #60012 from Sauermann/fix-collisionobject-canvas-doc 2022-04-13 09:27:56 +02:00
Rémi Verschelde 43305c6b79
Merge pull request #60017 from timothyqiu/nav-server-free
Rename `NavigationServer`'s `free` method to `free_rid`
2022-04-13 08:33:18 +02:00
SuddenlyNothing 892c31e149 Add documentation to CheckBox 2022-04-12 21:05:55 +02:00
Hendrik Brucker cf58d23a72 Add Vector4 to VisualShader 2022-04-12 19:09:29 +02:00
Rémi Verschelde d9cb39c2e8
Merge pull request #60170 from ConteZero/context_menu 2022-04-12 18:42:58 +02:00
Yuri Rubinsky 3d63f6e36d
Merge pull request #60171 from Chaosus/restore_aa 2022-04-12 18:09:58 +03:00
ConteZero 645aded7e9 Add context menu to RichTextLabel 2022-04-12 16:28:38 +02:00
Priyansh Rathi 0ea7780e33
move gltf export under scene menu 2022-04-12 19:42:41 +05:30
Rémi Verschelde 724dd82f92
Merge pull request #60069 from Calinou/fsr-fix-editor-enum 2022-04-12 14:33:52 +02:00
Yuri Roubinsky 6e9535a9c8 Restore antialiasing for `draw_line` 2022-04-12 13:03:56 +03:00
Haoyu Qiu 2fa3c65d30 Improves EditorInspector documentation 2022-04-12 12:08:24 +08:00
Rémi Verschelde 9528aa42be
Merge pull request #60102 from KoBeWi/graphememe 2022-04-11 17:49:46 +02:00
Rémi Verschelde 4ab86c6731
Merge pull request #59980 from reduz/animation-libraries 2022-04-11 14:18:35 +02:00
Rémi Verschelde 2ec68599a4
Merge pull request #60111 from KoBeWi/the_files_have_landed 2022-04-11 12:52:51 +02:00
reduz 6f401439f8 Implement Animation Libraries
* Instead of containing single animations, AnimationPlayer now contains libraries.
* Libraries, in turn, contain the animations.

This paves the way for implementing the possibility of importing scenes as animation libraries, finally allowing to import animations separate from the 3D models.

Missing (will be done on separate PRs):

* Make it possible to import scenes (dae/fbx/gltf) as animation libraries.
* Make it possible for AnimationTree to import animation libraries on its own, so it does not rely on AnimationPlayer for everything.
2022-04-11 12:51:54 +02:00
Rémi Verschelde 596e529a59
Merge pull request #60125 from Calinou/makerst-improve-error-reporting 2022-04-11 12:51:31 +02:00
Rémi Verschelde ca9372622f
Merge pull request #60104 from ConteZero/shortcut_keys 2022-04-11 12:02:42 +02:00
Hugo Locurcio f0b860fbad
makerst: Improve error reporting
- List file names before error descriptions, as is common in linters.
- Print the number of errors reported at the end of the list.
- Use double quotes instead of single quotes in messages.
2022-04-11 02:34:37 +02:00
kobewi 63de41b996 Improvements to files_dropped signal 2022-04-11 00:37:06 +02:00
ConteZero addadaaa24 Add select_all() to RichTextLabel 2022-04-10 18:03:10 +02:00
kobewi 2c85599218 Improve shaped_text_get_word_breaks() 2022-04-10 17:43:52 +02:00
FireForge 8e752b06e8 Expose EditorSpinSlider.hide_slider 2022-04-09 16:31:22 -05:00
Hugo Locurcio bc2ca2ebcf
Add dithering to ProceduralSkyMaterial to combat banding
Dithering was already present in PhysicalSkyMaterial. This brings
it to ProceduralSkyMaterial as well, with the same algorithm
and default intensity.
2022-04-09 18:29:41 +02:00
Hugo Locurcio d15b69118d
Fix 3D scaling enum size in the editor and improve descriptions 2022-04-09 17:53:45 +02:00
fabriceci 09efb1f726 Fix up direction doc description 2022-04-09 12:59:24 +02:00
Hugo Locurcio 2252663163
Allow `size` values as low as `0.001` in Camera3D's orthogonal/frustum mode
This allows for lower field of view (or higher zoom) in orthogonal
and frustum camera modes.

The property hint also allows setting the size with greater precision.
2022-04-08 18:49:45 +02:00
Aaron Record dc4bf7f6e6 Add tutorial links to Signal's documentation 2022-04-08 08:25:45 -06:00
Haoyu Qiu 63a9188ddb Rename NavigationServer's free method to free_rid 2022-04-08 17:39:17 +08:00
Markus Sauermann b9c91d620e Add a note about collisions in different canvases. 2022-04-08 09:27:31 +02:00
Rémi Verschelde 0f9231ca0f
Merge pull request #59788 from Vitika9/59711 2022-04-07 15:30:57 +02:00
jordi 14bad75206 Add enum values (Ignore, Warn, Error) to GDScript warnings 2022-04-06 10:57:33 -05:00
kobewi 6e622c58c5 Change gizmo_extents to property 2022-04-05 16:16:28 +02:00
Rémi Verschelde f00803b8a5
Merge pull request #56695 from bruvzg/mod_unicode_input 2022-04-05 14:03:39 +02:00
Rémi Verschelde c91f4ac419
Merge pull request #59910 from rcorre/array-remove-doc 2022-04-05 13:43:21 +02:00
Ryan Roden-Corrent f84e2db35e
Clarify Array.erase for nonexistant element.
The docs specify that Array.remove does nothing if the index does not
exist. Array.erase does not have a similar phrase, so it's unclear if
erase will print an error, or silently do nothing.
2022-04-05 07:07:56 -04:00
bruvzg d1207a0504
[Input] Add extra `shortcut_input` input processing step to process Unicode character input with Alt / Ctrl modifiers, after processing of shortcuts. 2022-04-05 13:46:45 +03:00
Rémi Verschelde f084d50cdd
Merge pull request #59880 from m4gr3d/update_resizeable_main 2022-04-04 19:06:54 +02:00
Rémi Verschelde fc45c28660
Merge pull request #59841 from KoBeWi/drag_box 2022-04-04 18:24:06 +02:00
Fredia Huya-Kouadio f1a7caf9bb Remove duplicate `resizable` settings 2022-04-04 09:18:07 -07:00
Rémi Verschelde e659eb66a0
Merge pull request #59874 from ConteZero/richtextlabel_deselect 2022-04-04 16:57:11 +02:00
ConteZero 45159e88e1 Add deselect() to RichTextLabel 2022-04-04 16:06:57 +02:00
Igor Kordiukiewicz fd54762892 Added interpolation property to GPUParticles2D 2022-04-04 15:51:13 +02:00
Rémi Verschelde 338b23d572
Merge pull request #59513 from BastiaanOlij/openxr_actionmap_editor 2022-04-04 14:26:28 +02:00
Bastiaan Olij 9b7b9de0e5 Add action map editor for OpenXR 2022-04-04 18:43:29 +10:00
kobewi c8de265307 Mention how to add dragging for SpinBox's LineEdit 2022-04-03 19:40:14 +02:00
Rémi Verschelde c630c2001d
Merge pull request #59633 from EricEzaM/better-code-complete-update
Improve sorting of Code Completion options.
2022-04-03 12:34:00 +02:00
Rémi Verschelde 6bbd4def45
Merge pull request #59415 from KoBeWi/tween_time() 2022-04-02 00:31:40 +02:00
Vitika9 ff75b30e6e Removed show_on_top property in CanvasItem 2022-04-01 18:40:40 +05:30
Rémi Verschelde 26048c805b
Merge pull request #59331 from bartekd97/navigation-agent-layers 2022-04-01 13:35:51 +02:00
Max Hilbrunner c7f6af2855
Merge pull request #59759 from novaplusplus/month_late_typo_fix
Fixing some of my own typos
2022-04-01 12:49:17 +02:00
Eric M 4ab605d14d Improve sorting of Code Completion options.
Done by ordering options by their location in the code - e.g. local, parent class, global, etc.
2022-04-01 20:39:09 +10:00
Rémi Verschelde 4263f02f28
Merge pull request #59764 from reduz/blender-import-autodetect 2022-04-01 11:42:05 +02:00
reduz e32215fbad Add Blender install autodetection and configuration.
This PR is a continuation to #54886

* Changed Blender path editor setting from binary to installation.
* Add a class to query whether the format is supported.
* This class allows to create proper editors to configure support.

**NOTE**: This PR only provides autodetection on Linux. Code needs to be added for Windows and MacOS to autodetect the Blender installation.

Co-authored-by: bruvzg <7645683+bruvzg@users.noreply.github.com>
Co-authored-by: Pedro J. Estébanez <pedrojrulez@gmail.com>
2022-04-01 11:01:12 +02:00
Rémi Verschelde 142a039f43
Merge pull request #59712 from Calinou/doc-canvasitem-top-level 2022-03-31 23:18:54 +02:00
Rémi Verschelde 8e5d927af5
Merge pull request #59590 from Calinou/rename-print-stray-nodes 2022-03-31 22:21:51 +02:00
nova++ 05718796db
Fixing some of my own typos...
(and a little improvement to wording that was bugging me)
2022-03-31 14:20:37 -04:00
Hugo Locurcio a29f2bfe54
Rename `Node.print_stray_nodes()` to `Node.print_orphan_nodes()`
The "orphan" terminology is already used elsewhere.
2022-03-31 18:33:02 +02:00
Rémi Verschelde a647fb3e62 Fix typos with codespell
Using codespell 2.2-dev from current git.

Fix a couple incorrect uses of gendered pronouns.
2022-03-31 14:07:29 +02:00
Hugo Locurcio f049c7ed06
Clarify what `top_level` does in CanvasItem 2022-03-31 02:04:55 +02:00
Hugo Locurcio de363db2a6
Improve documentation for Array operators 2022-03-30 20:04:45 +02:00
K. S. Ernest (iFire) Lee 0a6889d834 Add fbx2gltf support for importing .fbx files
Lets you drag or place .fbx files in the project folder and it will import the files.

An editor setting sets the location of the fbx2gltf binary.

Enables .fbx and .blend by default.

Co-authored-by: Rémi Verschelde <rverschelde@gmail.com>
2022-03-30 15:22:46 +02:00
Rémi Verschelde 118f29694b
Merge pull request #59691 from akien-mga/remove-adhoc-fbx-importer 2022-03-30 14:44:07 +02:00
Rémi Verschelde 03c58954c0
Merge pull request #58436 from piiertho/feature/typed-vararg-method-bind 2022-03-30 13:47:35 +02:00
Max Hilbrunner 3f78375cce
Merge pull request #58934 from Karmavil/doc/classes/array.xml
doc: Add descriptions for Array operators
2022-03-30 13:40:13 +02:00
Rémi Verschelde 33d477498e Remove ad-hoc FBX importer
This importer was the fruit of a lot of amazing reverse engineering
work by RevoluPowered, based on the original Assimp importer that was
introduced by fire.

While promising and well tuned for a specific type of FBX scenes, it
was found to have many flaws to support the many FBX exporters and
legacy models that Godot users want to use. As we currently lack a
maintainer to improve it, those issues are left unresolved and FBX
import is still sub-par in the current Godot releases.

After some experimentation, we're instead adding a new importer that
relies on Facebook's `fbx2gltf` command line tool to convert FBX to
glTF, so that we can then use our well-maintained glTF importer.
See #59653 and https://github.com/facebookincubator/FBX2glTF for details.
2022-03-30 13:04:31 +02:00
Pierre-Thomas Meisels 63f7f44ccb Make vararg method bind no return and return
Type emit_signal exposed method return type

set UndoRedo add_do_method and add_undo_method exposed return void

Set TreeItem::_call_recursive_bind returns void

Set _rpc_bind and _rpc_id_bind returns void in Node

Set _call_group and _call_group_flags method returns void in SceneTree

Set godot-cpp-test CI flag to false
2022-03-30 11:43:12 +02:00
reduz 45f74ceb85 Add PortableCompressedTexture
* Resource that allows saving textures embedded in scenes or standalone.
* Supports only formats that are portable: Lossy, Lossles or BasisUniversal

This is something I wanted to add for a long time. I made it now because @fire
requires it for importing GLTF2 files with embedded textures, but also this
will allow saving Godot scenes as standalone binary files that will run
in all platforms (because textures will load everywhere).

This is ideal when you want to distribute individual standalone assets online
in games that can be built from Godot scenes.
2022-03-30 10:39:41 +02:00
K. S. Ernest (iFire) Lee 9484ee7a9e Add support for importing .blend files
Lets you drag or place .blend files in the project folder and it will import the files.

Checks for Blender 3.0's gltf2 `export_keep_originals` option.

Add basepath support to GLTFDocument append_from_file.

Co-authored-by: Rémi Verschelde <rverschelde@gmail.com>
2022-03-29 21:54:41 +02:00
Rémi Verschelde 482cdeaf71
Merge pull request #58608 from KoBeWi/metadefault 2022-03-29 16:14:28 +02:00
kobewi e04ae8c8bc Add get_total_elapsed_time() to Tween 2022-03-29 13:34:05 +02:00
Rémi Verschelde c5efda5f4e i18n: Sync classref translations with Weblate
(cherry picked from commit 37f6fff7ae)
2022-03-29 01:23:07 +02:00
Rémi Verschelde abbb0dc082
Merge pull request #59548 from akien-mga/obj-remove-unused-categories 2022-03-28 14:17:24 +02:00
Rémi Verschelde 41d075de58
Merge pull request #59456 from Calinou/color-expose-to-linear-srgb 2022-03-28 13:36:19 +02:00
Rémi Verschelde 143d13717b
Merge pull request #59553 from reduz/script-extension-support 2022-03-28 13:35:21 +02:00
Hugo Locurcio 1c343cd54d Expose Color's `to_linear()` and `to_srgb()` to scripting 2022-03-28 12:17:55 +02:00
Rémi Verschelde 00e9170812
Merge pull request #59574 from Sauermann/proposal-rename-warp-mouse
Rename warp mouse functions to warp_mouse
2022-03-28 08:52:02 +02:00
Hugo Locurcio fbec10179a
Improve documentation for `Camera3D.project_ray_{normal,origin}`
This mentions that internally, the inverse camera projection is used
to perform projections.
2022-03-27 20:31:18 +02:00
Fabio Alessandrelli 4a95408dd4 [Net] Change HTTPRequest timeout type to double.
For consistency with the Timer class and general time representation
inside the engine.
2022-03-27 18:15:56 +02:00
Karmavil aef97305db Add descriptions to operators 2022-03-27 12:13:56 -03:00
Fabio Alessandrelli 331f1662df [Net] Drop is_connected_to_host for TCP and UDP.
The UDP method is now called `is_socket_connected` to limit confusion
with the actual host connection status which doesn't make sense in UDP.

The TCP method is completly dropped, use get_status instead.

The only one left is the WebSocketPeer one, which should be fine as is
for now.
2022-03-27 16:36:44 +02:00
Fabio Alessandrelli 0e52867668 [Net] Make StreamPeerTCP::_poll_connection explicit.
No longer hacked into `get_status` and renamed to `poll`.

The old `poll` (for *nix `poll`, win `select`) is now called `wait`.
2022-03-27 16:36:44 +02:00
reduz 360dea5348 Add GDExtension support to Script
* Ability to create script languages from GDExtension
* Some additions to gdnative_extension.h to make this happen
* Moved the GDExtension binder to core

This now allows creating scripting languages from GDExtension, with the same ease as if it was a module. It replaces the old PluginScript from Godot 3.x.
Warning: GodotCPP will need to be updated to support this (it may be a bit of work as ScriptInstance needs to be created over there again).
2022-03-27 16:13:00 +02:00
Markus Sauermann 0494e024d8 Rename warp mouse functions to warp_mouse 2022-03-27 14:12:01 +02:00
Rémi Verschelde f0407ad14d
Merge pull request #59336 from YeldhamDev/where_we_dropping_boys 2022-03-26 23:30:07 +01:00
Rémi Verschelde 5371009d8e Object: Remove unused category boilerplate
We might want to re-add something like this if/when we find a good use case
for it and do the effort to categorize all objects in the API properly.

Until then, it's better to remove that boilerplate since it's not needed.

Closes #18711.
2022-03-26 15:46:01 +01:00
Rémi Verschelde e7fd0ec31f doc: Fix String.rsplit code example
Fixes #36898.
Supersedes and closes #36951.
2022-03-26 15:05:05 +01:00
FireForge bb7e6e9951 Rename "ss_reflections_" to "ssr_" in Environment 2022-03-25 14:37:01 -05:00
Hugo Locurcio 7d8b344f01
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-23 18:18:23 +01:00
Hugo Locurcio 25434531cd
Document the Environment class 2022-03-23 16:46:53 +01:00
Haoyu Qiu 405bc96a1e Document how to specify explicit value for `PROPERTY_HINT_ENUM` names 2022-03-23 17:05:49 +08:00
Rémi Verschelde 9162f27836
Merge pull request #59314 from reduz/add-static-methods-to-classdb 2022-03-22 19:22:46 +01:00
Hugo Locurcio 1a5cfcd335
Improve documentation related to detail mapping in BaseMaterial3D 2022-03-22 19:09:03 +01:00
reduz 2f651277da Add static method support to ClassDB
* Based on the work done for Variant in the past.
* Added `ClassDB::bind_static_method`
* Cleaned up ClassDB::bind_method to use variadic templates.

This adds support for having static methods in Object derived classes.
Note that this does not make it work yet in GDScript or Mono and, while it works for GDExtension, GodotCPP needs to be updated.
2022-03-22 16:27:34 +01:00
kobewi 3eb7fc4bfd Add optional 'default' argument to get_meta() 2022-03-22 15:50:47 +01:00
Rémi Verschelde 4c55a6529a
Merge pull request #59354 from Chaosus/astar3d 2022-03-22 13:15:21 +01:00
Rémi Verschelde 7538ad81ac
Merge pull request #59410 from bruvzg/mac_menu_features 2022-03-22 12:58:29 +01:00
Rémi Verschelde 2a116f601b
Merge pull request #59275 from bruvzg/ft_brotli 2022-03-22 12:47:00 +01:00
Hugo Locurcio 003e1e6217
Improve documentation for tonemapping operators 2022-03-22 12:14:51 +01:00
bruvzg 595995a5a7
[macOS] Add missing global menu features. 2022-03-22 12:38:14 +02:00
Michael Alexsander 94b8f38de2 Add visual marker when dragging and dropping tabs 2022-03-21 22:16:29 -03:00
zacryol 21fc3cbe81 update _init() description
Specify details regarding required parameters.
2022-03-21 09:13:32 -06:00
Rémi Verschelde 16e96e52d3
Merge pull request #59352 from winterpixelgames/notify-local-transform-constant 2022-03-21 12:26:26 +01:00
Haoyu Qiu 6bf01e0567 Mention default output node name for AnimationNodeBlendTree 2022-03-21 18:02:40 +08:00
Max Hilbrunner aa8ff21b2a
Merge pull request #59142 from Calinou/doc-multiplayerpeerextension
Document the MultiplayerPeerExtension class
2022-03-21 00:54:10 +01:00
Jason Knight 640099cce5 Bind NOTIFICATION_LOCAL_TRANFORM_CHANGED 2022-03-20 11:34:01 -06:00
Yuri Roubinsky 7913e04950 Rename `AStar` to `AStar3D` 2022-03-20 17:34:40 +03:00
BARTEK-PC\Bartek 4972f1b864 Expose navigable layers for NavigationAgent2D/3D 2022-03-20 15:04:56 +01:00
Rémi Verschelde cb51df3286
Merge pull request #59343 from madmiraal/fix-57943
Ensure minimum modifiers are pressed when matching actions
2022-03-20 11:26:05 +01:00
Marcel Admiraal ea20049afc Ensure minimum modifiers are pressed when matching actions 2022-03-20 08:02:54 +00:00
kobewi 342dac77d4 Hide text and icon properties in OptionButton 2022-03-19 13:36:10 +01:00
Rémi Verschelde 288cdca71d
Merge pull request #59290 from rburing/get_process_info_docs
PhysicsServer3D docs: sync phrasing of get_process_info with 2D docs
2022-03-19 08:30:44 +01:00
Ricardo Buring a1d4f8d389 PhysicsServer3D docs: sync phrasing of get_process_info with 2D docs 2022-03-18 19:53:14 +01:00
Rémi Verschelde 9c231c2c1a
Merge pull request #59254 from Calinou/doc-node-owner
Mention that Node's `owner` must be set for persistence to work
2022-03-18 19:24:07 +01:00
Hugo Locurcio be1acf3b92
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.
2022-03-18 18:12:44 +01:00