Commit graph

8669 commits

Author SHA1 Message Date
Rémi Verschelde efa3ff6b95
Merge pull request #54024 from akien-mga/editor-i18n-thresholds 2021-10-20 16:05:30 +02:00
Rémi Verschelde c942d567eb
Merge pull request #53926 from YeldhamDev/i_am_tabbar_now 2021-10-20 15:42:41 +02:00
Rémi Verschelde 01aec21d25
i18n: Only include editor translations above a threshold
This reduces the size of the editor binaries significantly, as we otherwise
embed all WIP translations, including ones with very low completion ratios,
and end up paying for the size of all `msgid`s for each locale.

Cf. https://github.com/godotengine/godot-proposals/issues/3421 for details.

The thresholds used are:
- 30% for the editor interface (should already include most common strings
  while more obscure ones like UndoRedo action names might be untranslated).
- 10% for the class reference: this is a HUGE resource and 10% is already
  a lot of useful content, especially if focused on the most used APIs.

This currently reduces the size of the editor binary by 17% on Linux.

The list will be synced manually every now and then.

(cherry picked from commit 8425c58991)
2021-10-20 15:10:13 +02:00
Rémi Verschelde 9841c9abe8
Merge pull request #53994 from groud/move_tileset_tilemap_switch_to_tabs 2021-10-20 11:53:54 +02:00
Rémi Verschelde 6d3eef03bc
Merge pull request #53260 from Calinou/editor-inspector-warning-yellow 2021-10-20 11:48:12 +02:00
Haoyu Qiu 392d529247 Update view name after processing orbit view shortcuts 2021-10-20 13:05:59 +08:00
Gilles Roudière 20f4dce7a0 Fix EditorToaster constant update and prevent a crash 2021-10-19 17:18:45 +02:00
Gilles Roudière 5317b79a1d Remove the tilemap/tileset editor switch, move it to tabs 2021-10-19 17:11:34 +02:00
Michael Alexsander 67acb7de6e Rename Tabs to TabBar 2021-10-19 11:37:31 -03:00
Gilles Roudière bc0b702874
Merge pull request #53440 from groud/tile_map_patterns_palette
Implement TileMap patterns palette
2021-10-19 13:13:46 +02:00
Rémi Verschelde b1b5d516d7
Merge pull request #53979 from KoBeWi/bug_from_the_past 2021-10-19 13:13:09 +02:00
kobewi abe22dfcf4 Fix command history for plugin commands 2021-10-19 12:23:24 +02:00
Gilles Roudière 1a95f893c4 Implement TileMap patterns palette 2021-10-19 11:57:37 +02:00
Rémi Verschelde 4387f9645b
Merge pull request #52940 from groud/toast_notification 2021-10-19 09:57:13 +02:00
Rémi Verschelde 21f1ac8bf3
Merge pull request #53805 from groud/name_to_tileset_sources 2021-10-19 09:56:19 +02:00
Rémi Verschelde 64c9d44c06
i18n: Sync editor translations with Weblate
(cherry picked from commit 2a7e1d0aac)
2021-10-18 12:02:05 +02:00
jmb462 f2943eec72 Fix plugin create dialog subfolder and script field validity checks 2021-10-17 23:42:04 +02:00
Rémi Verschelde c240275482
Merge pull request #51984 from rcorre/camera_shortcuts 2021-10-16 18:50:48 +02:00
Rémi Verschelde a4e1a07d83
Merge pull request #53865 from reduz/implement-blend-shape-tracks 2021-10-16 16:48:10 +02:00
reduz ae1c016547 Implement Animation Blend Shape Tracks
* New track type BLEND_SHAPE
* Blend shapes are imported via this new track type
* Processing is more optimized (no longer relies on variants)
* Modified the Blend Shape API in MeshInstance3D to use indices rather than StringNames (more optimizes)
* Promo: Fixed a small bug in gizmo updating in Node3D that affected performance

Dedicated BlendShape tracks are required for both optimization and eventually implementing them in animation compression.
2021-10-16 08:36:05 -03:00
mennomax b4eeeb315a
Swap args of Plane(point, normal) constructor
Now (normal, point)
2021-10-15 20:49:42 -05:00
Rémi Verschelde 96410f55b2
Merge pull request #53860 from akien-mga/scons-end-gen-cpp-suffering 2021-10-15 23:59:12 +02:00
Rémi Verschelde c96dcdf50a
Merge pull request #53859 from lyuma/collada_fix_transform 2021-10-15 22:14:26 +02:00
Rémi Verschelde c133480531
SCons: List .gen.cpp sources explicitly to avoid globbing errors
Whenever we change the name (or remove) generated cpp files with the `.gen.cpp`
extension, users run into build issues when switching between branches (i.e.
switching before and after the name change/removal). This is because we glob
`*.cpp` so if a now-obsolete file from a previous build is present, we'll
include it too, potentially leading to bugs or compilation failure (due to
missing headers or invalid code).

So globbing patterns in `add_source_files` will now skip files ending with
`.gen.cpp`, which should instead be passed explicitly where they're used.
2021-10-15 22:14:11 +02:00
Lyuma a54fe3ffa8 collada: fix error in use of fix_transform. 2021-10-15 11:36:18 -07:00
Rémi Verschelde b5ece7c363
Merge pull request #53764 from Chaosus/vs_curve_input_port_default 2021-10-15 19:31:05 +02:00
Rémi Verschelde 55c71ba1a3
Merge pull request #53813 from reduz/editor-import-plugins 2021-10-15 15:14:52 +02:00
Rémi Verschelde 5bc0e4081b
Merge pull request #53753 from EricEzaM/fix-shortcut-saving 2021-10-15 14:40:40 +02:00
reduz b3bf90b3ce Add scene Post-Import Plugin support.
* New plugin system to control the whole import workflow
* Can add options and run code at every import step (general, per node, mesh, animation, material etc.)

This constitutes a first version of these plugins. The ability to interact with the import preview dialog will likely be added later on.
2021-10-15 09:12:04 -03:00
Rémi Verschelde e53e897b8c
Merge pull request #53782 from reduz/animation-track-type-import-actions 2021-10-15 13:47:31 +02:00
Eric M 7e435fa841 Fixed shortcut saving and 'original' comparisons 2021-10-15 20:39:38 +10:00
K. S. Ernest (iFire) Lee 8f0c056431 Fix specific warnings issues by Clang
Found by `scons dev=yes` on llvm-mingw.
2021-10-14 14:14:26 -07:00
Rémi Verschelde f90047f158
Merge pull request #53786 from TokageItLab/fix-skeleton-editor-methods 2021-10-14 20:53:15 +02:00
Silc 'Tokage' Renew 8e9897b6de get rid set_bone_pose and fix some function in SkeletonEditor 2021-10-15 02:41:17 +09:00
Gilles Roudière 3b42660105 Add a name to TileSet sources 2021-10-14 14:54:48 +02:00
Gilles Roudière 0587e5e018 Implement toast notifications in the editor 2021-10-14 13:30:54 +02:00
reduz 0bf0024395 Implement import actions for pos/rot/scale animation tracks
Following actions are supported for each track type (position, rotatin, scale):

* ImportIfPresent: If a track of this type is found, import it.
* ImportIfPresentForall (default): If a track is found for a given node/bone, create it in animations. This ensures there is always a correct blending.
* Never: Delete all tracks found for a given type. This is useful if you want to, as an example, force to import rotations only.
2021-10-14 08:22:54 -03:00
kobewi 0afd47d8bc Add tool quick-select to tile editor 2021-10-14 02:24:39 +02:00
reduz 2dc823273e Remove REST transform influence in skeleton bones
* Animations and Skeletons are now pose-only.
* Rest transform is kept as reference (when it exists) and for IK
* Improves 3D model compatibility (non uniform transforms will properly work, as well as all animations coming from Autodesk products).
2021-10-13 14:51:29 -03:00
Rémi Verschelde 004b44e915
Merge pull request #53767 from groud/improve_tile_set_change_performances 2021-10-13 16:03:31 +02:00
Gilles Roudière 0de2fce3e1 Greatly improve editor performances by deferring tiles related updates
Solve few update problems
2021-10-13 14:49:47 +02:00
Yuri Roubinsky e270644b20 Add a default input parameter field to CurveTexture (in visual shaders) 2021-10-13 15:25:12 +03:00
Gilles Roudière b9151860f3 Prevent tiles outside atlas texture 2021-10-13 13:44:02 +02:00
Rémi Verschelde 3e86ca5586
Merge pull request #53689 from reduz/remove-animation-transform3d-track 2021-10-13 12:40:33 +02:00
Rémi Verschelde 4d2c82ef77
Merge pull request #53727 from Calinou/3d-editor-tweak-object-snap-distances 2021-10-13 11:43:58 +02:00
Rémi Verschelde 74a87fe98b
Merge pull request #53683 from Chaosus/vs_previews 2021-10-13 10:03:44 +02:00
reduz ec19ed3723 Remove animation 3D transform track, replace by loc/rot/scale tracks.
* `Animation.TYPE_TRANSFORM3D` track is gone.
* Added POSITION_3D, ROTATION_3D, SCALE_3D tracks.
* GLTF2, Collada, FBX importers will only import the track types found.
* Skeleton3D bone poses are now Pos/Rot/Scale, pose matrix removed.
* AnimationPlayer and AnimationTree animate these tracks separately, only when found.
* Removed BakeReset code, is useless with these changes.

This is the first in a series of commits designed to make the animation system in Godot more useful, which includes:

* Better compatibility with Autodesk products
* Better reusability of animations across models (including retargeting).
* Proper animation compression.
* etc.

*Note* GLTF2 animation saving went broken with this PR, needs to be fixed in a subsequent one.
2021-10-12 20:08:42 -03:00
Rémi Verschelde 7494d54e04
Merge pull request #53471 from KoBeWi/🥞
Improve editor panning and remove RMB panning
2021-10-12 22:37:28 +02:00
Rémi Verschelde b747063050
Merge pull request #53705 from e8newallm/53668
Fixed editor attempting to save a blank scene with save all scenes
2021-10-12 22:35:10 +02:00
Rémi Verschelde 64ec08d70d
Merge pull request #53735 from Paulb23/text-file-drop-and-drag
Allow dragging TextFiles from the Filesystem dock
2021-10-12 22:21:02 +02:00