Commit Graph

106 Commits

Author SHA1 Message Date
98acdf8270 Now full screen editor plugins have the ability to hide their tab button in the top bar. 2022-08-20 17:20:34 +02:00
bafd6d1d8d Renamed AFTER_GUI_INPUT_DESELECT to AFTER_GUI_INPUT_NO_DESELECT. 2022-08-20 01:01:18 +02:00
e2d42db711 Also renamed the files. 2022-08-19 21:24:36 +02:00
cffe742085 Renamed the VisualServer to RenderringServer like in Godot4, as I think it's a lot better name for it. I did not yet rename the files. 2022-08-19 20:50:20 +02:00
521934ff55 Ported from Godot4: New and improved IK system for Skeleton2D
This PR and commit adds a new IK system for 2D with the Skeleton2D node
that adds several new IK solvers, a way to control bones in a Skeleton2D
node similar to that in Skeleton3D. It also adds additional changes
and functionality.
This work was sponsored by GSoC 2020 and TwistedTwigleg.
Full list of changes:
* Adds a SkeletonModifier2D resource
  * This resource is the base where all IK code is written and executed
  * Has a function for clamping angles, since it is so commonly used
  * Modifiers are unique when duplicated so it works with instancing
* Adds a SkeletonModifierStack2D resource
  * This resource manages a series of SkeletonModification2Ds
  * This is what the Skeleton2D directly interfaces with to make IK possible
* Adds SkeletonModifier2D resources for LookAt, CCDIK, FABRIK, Jiggle, and TwoBoneIK
  * Each modification is in its own file
  * There is also a SkeletonModifier2D resource that acts as a stack for using multiple stacks together
* Adds a PhysicalBone2D node
  * Works similar to the PhysicalBone3D node, but uses a RigidBody2D node
* Changes to Skeleton2D listed below:
  * Skeleton2D now holds a single SkeletonModificationStack2D for IK
  * Skeleton2D now has a local_pose_override, which overrides the Bone2D position similar to how the overrides work in Skeleton3D
* Changes to Bone2D listed below:
  * The default_length property has been changed to length. Length is the length of the bone to its child bone node
  * New bone_angle property, which is the angle the bone has to its first child bone node
  * Bone2D caches its transform when not modified by IK for IK interpolation purposes
  * Bone2D draws its own editor gizmo, though this is stated to change in the future
* Changes to CanvasItemEditor listed below:
  * Bone2D gizmo drawing code removed
  * The 2D IK code is removed. Now Bone2D is the only bone system for 2D
* Transform2D now has a looking_at function for rotating to face a position
* Two new node notifications: NOTIFICATION_EDITOR_PRE_SAVE and NOTIFICATION_EDITOR_POST_SAVE
  * These notifications only are called in the editor right before and after saving a scene
  * Needed for not saving the IK position when executing IK in the editor
* Documentation for all the changes listed above.
- TwistedTwigleg
8aa3c2f091
2022-08-18 18:47:30 +02:00
4c4e19223e Added _theme_ infix to the theme helper methods in Control. 2022-08-17 20:57:16 +02:00
9757c39f05 Moved a few more core classes. 2022-08-17 17:43:49 +02:00
99e94b08c4 Moved base input related classes to core/input. 2022-08-17 17:02:24 +02:00
686663d3e4 Moved around more classes in core. 2022-08-17 16:01:01 +02:00
04feb63860 Moved Engine and projectSettings. 2022-08-17 15:35:28 +02:00
be16fe23ad Moved the error macros. 2022-08-17 15:14:19 +02:00
220b2db443 Moved String and related classes under a string folder in core. 2022-08-17 14:19:55 +02:00
dc9cc716c7 Moved Object related classes under core/object. 2022-08-17 13:45:14 +02:00
9555ee56b9 Moved Variant related classes under a variant folder in core. 2022-08-17 13:17:12 +02:00
388b88678e Moved container related classes in core under a new containers directory. 2022-08-17 12:53:49 +02:00
0d2fc2e9f2 Moved color to core/math. 2022-08-17 11:38:15 +02:00
4b939998a7 Removed AnimationTreePlayer, as it was deprecated (and also practically unusable). 2022-08-11 23:01:27 +02:00
b6eb2db442 Backported returning AfterGUIInput from forward_spatial_gui_input from Godot4. Also removed the first index parameter. This fully broke the skeleton editor, it will be fixed soon. 2022-08-11 02:24:30 +02:00
ed5024d3c3 Moved AnimationPlayerEditor::singleton to private, and added getter method for it. 2022-08-10 18:53:15 +02:00
Pedro J. Estébanez
285c2acefc Keep crash handler status on editor restart
(cherry picked from commit 116f03a1b68ecc59f9755cd0219e256c63955f55)
2022-07-29 23:49:10 +02:00
Alfred R. Baudisch
3354642b33 Script Editor: Don't switch to 2D/3D viewports when selecting nodes
Selecting nodes in the Scene dock automatically switches to the relevant 2D
or 3D viewport. This behavior can be annoying while using the Script Editor
and wanting to inspect node properties, so it's now disabled by default when
the Script Editor is active.

This new behavior can be changed back to the previous auto-switching using
the `text_editor/navigation/stay_in_script_editor_on_node_selected` editor
setting.

(cherry picked from commit c4433c37932aca14b45e76a0b3498561532a0055)
2022-07-29 23:20:27 +02:00
9596474a36 Ported: [Command line export] return 0 exit code when export is finished with warnings. - bruvzg
d6698c1f81
2022-07-29 23:01:04 +02:00
cow-neaz
d25bae8559 Stop game on reloading project
(cherry picked from commit 8935cf17cf674b0cb027e5c82a21a64d3a43feb1)
2022-07-29 11:01:55 +02:00
8ca3043a28 Ported: ProjectSettings: Ensure 'editor/' settings aren't nested
Having a mix of settings with and without subcategory makes the 'Editor'
section stand out with a weird UX, as instead of simply being a foldable
section like the others, it also holds its own top-level settings and is
therefore selectable.
This wasn't the case in 3.4, and is fixed in 4.0 by refactoring, so for
3.5 we should preserve the 3.4 UX, even if it's not the best.
- akien-mga
acd4a01b8c
2022-07-29 10:45:12 +02:00
43131ad4cb Ported: Add readable export errors. Add RTL image vertical alignment support. - bruvzg
f5fa1ca944
2022-07-28 18:40:46 +02:00
Red Headphone
7ddeae2e23 fix: no quit confirmation on project reload if files are saved 2022-07-27 17:46:15 +02:00
kobewi
89b5c84fd1 Cache script icons in editor
(cherry picked from commit 3f50dad460dc2239343e0eb9ba8fb63b8fd20b88)
2022-07-27 15:00:41 +02:00
Haoyu Qiu
957fcb67b1 Load fallback icon for custom class when no icon available
(cherry picked from commit ba90778f1cb670db34e3d51923456e90b29fa1c4)
2022-07-27 14:27:25 +02:00
37413614eb Ported: Add an inspector preview for BitMap - fire-forge, timothyqiu
e8d1552af2
2022-07-27 14:04:48 +02:00
FireForge
57bdac4e2b Add a RayCast2D.cast_to editor handle 2022-07-27 14:02:38 +02:00
9eee70dbb7 Ported: Add an external link editor icon
This replaces the existing "chainlink" instance icon that was
used for external links. That icon is still used for scene instancing.
The icon was designed by redlamp.
Co-authored-by: Taylor Wright <taylor@redlamp.org>
- Calinou
2bc036dad5
2022-07-27 09:02:28 +02:00
Haoyu Qiu
122a796535 Fix custom class icon when it inherits from a script 2022-07-27 01:17:09 +02:00
Haoyu Qiu
0658cad124 Localize unnamed project name in editor window title
(cherry picked from commit 35d087813981d05a699221f6bc7e5c72fc55c665)
2022-07-26 12:36:44 +02:00
eb99e955d9 Ported:
Update SceneTree debug colors when settings changed - timothyqiu
37d4306c2e
2022-07-25 18:55:29 +02:00
Vitika9
41eb735bb2 Made reload current project ask for confirmation with unsaved changes
(cherry picked from commit eb81ac8fc524edf7fa3fdcaaa1e7f22ffbbe287c)
2022-07-25 17:48:55 +02:00
32f148ac0c Mass replaced godot to pandemonium. 2022-03-23 20:46:05 +01:00
b74c00ea65 Backported the 3.x android editor port pr by m4gr3d and thebestnom. (Godot pr 57747). 2022-03-22 19:35:57 +01:00
5f7421974c Backported by hand: Add a GradientTexture2D editor plugin - fire-forge. (d76c9f8d92) 2022-03-20 14:59:19 +01:00
bad39216b9 Reworked the entries in the help menu. Also added pandemonium specific entries to the about window. Also fixed a crash when opening the about popup. 2022-03-20 13:30:49 +01:00
2ce53f2b9e Ran include-what-you-use on the classes in the editor/ floder. 2022-03-19 00:01:30 +01:00
b41f01cb92 Cleaned up the rest of the includes in the headers under engine/plugins. They can still be improved, by moving references too, but that will be done later. 2022-03-18 22:55:47 +01:00
3965d70ac5 Moved more includes to cpp files. 2022-03-17 19:35:23 +01:00
5f623865c6 Hide the video driver switch button if there is only one option. 2022-03-16 02:58:29 +01:00
50af60ded6 Removed TileMap, and TileSet. 2022-03-16 01:54:27 +01:00
7acd98dcf0 Removed the VCS plugin. 2022-03-16 01:46:11 +01:00
aaf91df4c1 Also removed the MeshLibrary. 2022-03-16 01:30:44 +01:00
5767e12b56 Removed editor feature profiles. 2022-03-16 01:17:27 +01:00
84bd8ad20a Removed VisualShaders. 2022-03-16 00:55:47 +01:00
93d29cbc62 Removed the AssetLib. 2022-03-16 00:47:29 +01:00
a9a83271db Removed the default skeleton editor, and made my port the default. Also removed the remover. 2022-03-16 00:36:02 +01:00
a598c06588 Removed the obj importer. 2022-03-16 00:12:35 +01:00
c0dfdd77f3 Removed particles editor plugins. 2022-03-15 22:25:33 +01:00
1035308489 Removed the collada importer. 2022-03-15 21:12:54 +01:00
03890f9e38 Removed GIProbes. 2022-03-15 19:03:03 +01:00
9e6d2fa653 Removed the Lightmapper and BakedLightmap classes. 2022-03-15 15:45:56 +01:00
49f8e8c398 Added godot with all my currently used engine modules. 2022-03-15 13:29:32 +01:00