Commit Graph

36617 Commits

Author SHA1 Message Date
Hugo Locurcio 37c1cbdcb2
Document caveats with Control's `mouse_entered`/`mouse_exited` signals 2021-07-25 22:43:02 +02:00
Raul Santos b3274a7064 Fix bindings generator range iterator errors 2021-07-25 21:32:54 +02:00
luz paz 2e0044c93d Remove unnecessary 'pass' statement
ref: https://lgtm.com/projects/g/godotengine/godot/?mode=tree&ruleFocus=910088
2021-07-25 11:56:24 -04:00
Nicholas Huelin a1a392045d
Fix always true expression in `cluster_builder_rd.h`
This pull request fixes an issue where an expression would always evaluate to `true` no matter what.
2021-07-25 11:53:04 -04:00
Nicholas Huelin aa61c00b0e
Fix dead code in `gdnative_interface.cpp`
This pull request fixes dead code found in `gdnative_interface.cpp`
2021-07-25 10:17:18 -04:00
Rémi Verschelde e2ebc7db58
Merge pull request #50841 from Blackiris/fix-instantiate-line-class
Fix instantiate line class
2021-07-25 15:44:28 +02:00
Julien Nguyen 6938dd72f2 Fix instantiate line class 2021-07-25 14:20:31 +02:00
Gallilus 70a6ff0a71
Change "Add Preload Node" action to "Add Node(s)"
The action might also drop Custom Nodes
2021-07-25 13:47:57 +02:00
luz paz 5cf3bed0c8 Fix various typos
Follow-up typos found via `codespell -q 3 -S ./thirdparty,*.po,./DONORS.md -L ackward,ang,ans,ba,beng,cas,childs,childrens,dof,doubleclick,fave,findn,hist,inout,leapyear,lod,nd,numer,ois,ony,paket,seeked,sinc,switchs,te,uint`
2021-07-25 07:18:25 -04:00
Rémi Verschelde 738205d923
Merge pull request #50835 from bruvzg/optimize_is_rtl
Optimise `is_layout_rtl`.
2021-07-25 12:55:46 +02:00
Hugo Locurcio 75dc0d1869
Add shortcut to toggle the 3D editor's camera preview
A Camera3D node still has to be selected to initially enable camera
preview, but another node can then be selected and the preview can
be disabled by pressing the shortcut key again.
2021-07-25 12:53:38 +02:00
Rémi Verschelde ff0b5f8fa1
Merge pull request #50809 from akien-mga/iterators-const-references 2021-07-25 12:52:58 +02:00
Rémi Verschelde 2f221e5fd5
Merge pull request #50250 from luzpaz/typos
Fix various typos
2021-07-25 12:38:58 +02:00
Rémi Verschelde ac3322b0af
Use const references where possible for List range iterators 2021-07-25 12:22:25 +02:00
Rémi Verschelde a0f7f42b84
Merge pull request #50834 from akien-mga/resourceuid-fix-remove-id-binding
ResourceUID: Fix `remove_id` binding
2021-07-25 12:22:04 +02:00
Rémi Verschelde 2a8a59eac0
Merge pull request #50644 from BastiaanOlij/mobile_compute_to_fragment 2021-07-25 11:58:11 +02:00
Rémi Verschelde c91860bb11
ResourceUID: Fix `remove_id` binding
Fixes #50833.
2021-07-25 11:55:56 +02:00
luz paz 3564c16cb8
Fix various typos with codespell
Found via `codespell -q 3 -S ./thirdparty,*.po,./DONORS.md -L ackward,ang,ans,ba,beng,cas,childs,childrens,dof,doubleclick,fave,findn,hist,inout,leapyear,lod,nd,numer,ois,ony,paket,seeked,sinc,switchs,te,uint`
2021-07-25 11:21:51 +02:00
Rémi Verschelde 6b11d8cc73
Merge pull request #50828 from aaronfranke/fix-json-stringify-dict
Fix check for the first key in JSON stringify from Dictionary code
2021-07-25 10:49:31 +02:00
bruvzg 9bb03e60d9 Optimise `is_layout_rtl` by caching its return value. 2021-07-25 10:33:00 +03:00
Bastiaan Olij 1f69582835 Use fragment shader instead of compute shader for effects for mobile renderer 2021-07-25 13:58:21 +10:00
Aaron Franke dd116d7998
Fix check for the first key in JSON stringify from Dictionary code 2021-07-24 21:28:50 -04:00
Hugo Locurcio 8cdfd2e706
Improve MeshInstance3D UV preview in the editor
- Use background and line colors that match better with the
  rest of the editor.
- Use translucent lines to make overlapping lines visible.
- Tweak the error message to mention the UV layer in question
  when there is no UV for a defined layer.
2021-07-25 01:11:24 +02:00
Rémi Verschelde cf8e9fd80c
Merge pull request #50820 from raulsntos/fix-csharp-documentation
Fix documentation in StringExtensions
2021-07-25 00:23:31 +02:00
Rémi Verschelde f66e71a26f
Merge pull request #50821 from raulsntos/fix-collision-doc
Fix typo in CollisionObject documentation
2021-07-24 23:50:30 +02:00
Rémi Verschelde 2bf903e98d
Merge pull request #50791 from foxydevloper/select-mode-tooltip-improvation
Improve select tool's tooltip for 2D and 3D
2021-07-24 23:45:44 +02:00
Raul Santos ba99387bf3 Fix documentation in StringExtensions 2021-07-24 22:58:41 +02:00
Raul Santos f8374b021e Fix typo in CollisionObject documentation 2021-07-24 22:57:18 +02:00
Rémi Verschelde fb821b8398
Merge pull request #50535 from ChristopheClaustre/packedbytearray_decode_api
Change in PackedByteArray decode api and docs
2021-07-24 21:54:48 +02:00
Ignacio Roldán Etcheverry 2ee395a277
Merge pull request #50757 from aaronfranke/simple-cs-editorconfig
Add a simple C# `.editorconfig`
2021-07-24 21:48:41 +02:00
Rémi Verschelde f6599e05a7
Merge pull request #50816 from aaronfranke/iterators-fix-scene-import
Fix scene import following List iterator changes
2021-07-24 21:22:47 +02:00
ChristopheClaustre 20818c12b7 New to_***_array method to decode PackedByteArray to Packed***Array
Documentation for new PackedByteArray::to_***_array methods
Documentation for to_byte_array method for PackedInt32/Int64/Float32/Float64Array
2021-07-24 21:06:47 +02:00
Aaron Franke c0ce2b3397
Fix scene import following List iterator changes 2021-07-24 14:56:53 -04:00
Rémi Verschelde 2b1e6e303e
Merge pull request #50786 from reduz/implement-resource-uids
Implement Resource UIDs
2021-07-24 17:18:12 +02:00
Rémi Verschelde 96d7bc62af
Merge pull request #50511 from aaronfranke/iterators
Use C++ range iterators for Lists in many situations
2021-07-24 14:21:06 +02:00
reduz 32b43cfeb3 Implement Resource UIDs
* Most resource types now have unique identifiers.
* Applies to text, binary and imported resources.
* File formats reference both by text and UID (when available). UID always has priority.
* Resource UIDs are 64 bits for better compatibility with the engine.
* Can be represented and used textually, example `uuid://dapwmgsmnl28u`.
* A special binary cache file is used and exported, containing the mappings.

Example of how it looks:

```GDScript
[gd_scene load_steps=2 format=3 uid="uid://dw86wq31afig2"]

[ext_resource type="PackedScene" uid="uid://bt36ojelx8q6c" path="res://subscene.scn" id="1_t56hs"]
```

GDScript, shaders and other special resource files can't currently provide UIDs, but this should be doable with special keywords on the files.
This will be reserved for future PRs.
2021-07-24 09:16:52 -03:00
Rémi Verschelde 9ac27b58c5
Merge pull request #50795 from Calinou/editor-profiler-display-time-add-tooltips
Add a tooltip for Inclusive and Self in the editor profiler
2021-07-24 10:20:08 +02:00
Andrea Catania 21a13649be
Fix Static & Rigid body generation on mesh import.
The function `_gen_shape_list` is using the resource `Res<Mesh>`, but during the import phase the resource used is instead `Ref<EditorSceneImporterMesh>`.

Note: the `Ref<EditorSceneImporterMesh>` is an intermediate resource, that will be used to create a `Res<Mesh>` at the end of the import process. `Ref<EditorSceneImporterMesh>` and `Ref<Mesh>` are not inheriting each other, so the internal cast done by `Ref<>` during the assignment, is always null:

```c++
Ref<EditorSceneImporterMesh> import_mesh(/* Assume it's initialized */);
CRASH_NOW(import_mesh.is_null());

Ref<Mesh> mesh = import_mesh;
CRASH_NOW(mesh.is_null()); // <--- Here we have a crash, since it's impossible perform the above cast, and the `mesh` is always null.
```

Here the full list of call to `_gen_shape_list`, where we can notice that a `Ref<EditorSceneImporterMesh>` is passed:
- https://github.com/AndreaCatania/godot/blob/master/editor/import/resource_importer_scene.cpp#L428
- https://github.com/AndreaCatania/godot/blob/master/editor/import/resource_importer_scene.cpp#L454-L458
- https://github.com/AndreaCatania/godot/blob/master/editor/import/resource_importer_scene.cpp#L512-L516

As you can notice, we always pass the following mesh: `Ref<EditorSceneImporterMesh> mesh = mi->get_mesh();`.

We already have the function `_pre_gen_shape_list` that executes the exact same job but using the correct type; Since there is no further usage of the function `_gen_shape_list` in the code base, I think it's just some leftover code, so I removed it entirely to use the proper function.
2021-07-24 08:39:18 +02:00
Hugo Locurcio e837e04ef8
Add a tooltip for Inclusive and Self in the editor profiler
This also changes the display mode tooltips to reflect the fact that
times are now displayed in milliseconds instead of seconds.
2021-07-24 06:24:24 +02:00
Aaron Franke 4e6efd1b07
Use C++ iterators for Lists in many situations 2021-07-23 17:38:28 -04:00
foxydevloper 6b90e2df6c Improve select tool's tooltip
- Makes tips clearer and more consistent.
- Removes outdated "shift+v" that doesn't work
- Adds Ctrl+RMB for adding nodes at position
- Removes tip for non-existent Alt+Drag in 3D select tool
2021-07-23 17:30:45 -04:00
Aaron Franke 5f8275d9ac
Add a simple C# .editorconfig 2021-07-23 17:04:53 -04:00
Rémi Verschelde b918c4c3ce
Merge pull request #50789 from aaronfranke/fix-input-action-raw-str
Fix Input get_action_raw_strength binding
2021-07-23 22:59:02 +02:00
Rémi Verschelde 57388809f7
Merge pull request #50780 from JFonS/fix_submenus
Fix Popup submenu in single-window mode
2021-07-23 22:15:23 +02:00
Rémi Verschelde aa4babdc06
Merge pull request #50762 from TokageItLab/fix-node-selection-signal 2021-07-23 22:14:55 +02:00
Rémi Verschelde 4c3d5850de
Merge pull request #50748 from JFonS/gizmo_rework
Node3D gizmo improvements
2021-07-23 21:55:16 +02:00
Rémi Verschelde 28160e1a6f
Merge pull request #50779 from DavidCambre/Revert-unnecessary-changes
Revert unnecessary changes to VisualScriptEmitSignal
2021-07-23 21:53:21 +02:00
jfons cfb555a081 Node3D gizmo improvements
* Clean-up of node_3d_editor_plugin.{h,cpp}: removed unused code, fixed some bugs.
* Moved node_3d_editor_gizmos.{h,cpp} to editor/plugins.
* Added support for multiple gizmos per node. This means custom gizmos will no longer override the built-in ones and that multiple gizmos can be used in more complex nodes.
* Added support for handle IDs. When adding handles to a gizmo, an ID can be specified for each one, making it easier to work with gizmos that have a variable number of handles.
* Added support for subgizmos, selectable elements that can be transformed without needing a node of their own. By overriding _subgizmo_intersect_frustum() and/or _subgizmo_intersect_ray() gizmos can define which subgizmos should be selected on a region or click selection. Subgizmo transformations are applied using get/set/commit virtual methods, similar to how handles work.
2021-07-23 21:01:10 +02:00
jfons 944b5ee639 Fix popup submenu in single-window mode
The internal processing code only works for OS windows, since it takes
the mouse position relative to the window and not the viewport. Now we
make sure it's not called in single-window mode.
2021-07-23 19:45:30 +02:00
David Cambré 74ca014364 Revert unnecessary changes to VisualScriptEmitSignal
Revert unnecessary changes to VisualScriptEmitSignal, commit 2032b56005b2f6add6b105a00f04c05f9b292eec
2021-07-23 19:34:27 +02:00