Commit graph

14583 commits

Author SHA1 Message Date
Rémi Verschelde
77af6ca8ad
Merge pull request #87634 from vnen/gdscript-binary-tokens
GDScript: Reintroduce binary tokenization on export
2024-02-09 12:35:00 +01:00
Rémi Verschelde
1774c17b64
Merge pull request #87625 from YuriSizov/editor-lightweight-script-previews
Generate script resource preview without parsing
2024-02-09 12:34:36 +01:00
Rémi Verschelde
b1d135ccb9
Merge pull request #84396 from quirkylemon/hide-private-enums
Hide private enums from documentation
2024-02-09 12:13:34 +01:00
RedMser
bf37a9bac6 Allow configuration warnings to refer to a property
This is used by the inspector so it can show a warning icon on
a specific property.
2024-02-08 23:05:20 +01:00
George Marques
72e5f8c31e
GDScript: Enable compression on export
Besides the regular option to export GDScript as binary tokens, this
also includes a compression option on top of it. The binary format
needs to encode some information which generally makes it bigger than
the source text. This option reduces that difference by using Zstandard
compression on the buffer.
2024-02-08 11:20:07 -03:00
George Marques
b4d0a09f15
GDScript: Reintroduce binary tokenization on export
This adds back a function available in 3.x: exporting the GDScript
files in a binary form by converting the tokens recognized by the
tokenizer into a data format.

It is enabled by default on export but can be manually disabled. The
format helps with loading times since, the tokens are easily
reconstructed, and with hiding the source code, since recovering it
would require a specialized tool. Code comments are not stored in this
format.

The `--test` command can also include a `--use-binary-tokens` flag
which will run the GDScript tests with the binary format instead of the
regular source code by converting them in-memory before the test runs.
2024-02-08 11:20:05 -03:00
QuirkyLemon
a5a8f0a881 Hide private enums from documentation 2024-02-08 08:10:43 -06:00
Rémi Verschelde
f8020d1364
Merge pull request #88026 from Calinou/editor-default-enable-add-type-hints
Enable Add Type Hints editor setting by default
2024-02-08 10:53:58 +01:00
Rémi Verschelde
4a30fe5e7c
Merge pull request #86564 from Giwayume/feature/canvas-item-shader-custom-data
Support CUSTOM shader attributes in 2D
2024-02-08 10:53:24 +01:00
Rémi Verschelde
163c00eb4d
Merge pull request #81655 from nlupugla/editor-interface-can-popup-dialogs
Expose `SceneTreeDialog` and `PropertySelector` via `EditorInterface`
2024-02-08 10:53:13 +01:00
Rémi Verschelde
0ebda8e0f4
Merge pull request #65753 from KoBeWi/run_1000000_instances
Add a dialog to customize run instances
2024-02-08 10:53:06 +01:00
Rémi Verschelde
b98c2f23da
Merge pull request #48364 from Calinou/add-vsync-editor-setting
Add a V-Sync editor setting
2024-02-08 10:52:59 +01:00
Rémi Verschelde
eac2091345
Merge pull request #87923 from smix8/meshlib_export_recursive
Make MeshLibrary export do recursive depth-search for MeshInstance3D nodes
2024-02-07 11:00:55 +01:00
Rémi Verschelde
bc9acde764
Merge pull request #87781 from aaronfranke/fix-crash-mesh-root
Fix crash when previewing a scene with a mesh as the root node
2024-02-07 10:58:52 +01:00
Hugo Locurcio
345f09d125
Enable Add Type Hints editor setting by default
Now that GDScript type hints improve performance since Godot 4.0
and the community is increasingly getting used to typed GDScript,
it makes sense to add type hints by default.

Official demos will also be moving to type hints at some point
in the future, further increasing the relevance of enabling type
hints out of the box.
2024-02-06 19:41:26 +01:00
Hugo Locurcio
6f9586443a
Add a V-Sync editor setting
The editor setting makes it possible to tweak V-Sync status
independently of the project setting.

Use cases:

- Decrease input lag and increase editor responsiveness when editing
  a project that has V-Sync enabled.
- Avoid tearing when editing a project that has V-Sync disabled.
2024-02-05 22:14:20 +01:00
kobewi
5ab9e50461 Add a dialog to customize run instances 2024-02-05 19:07:31 +01:00
kobewi
808f4e8cb9 Check if history exists before discarding 2024-02-05 17:42:37 +01:00
Rémi Verschelde
710c56e6b1
Merge pull request #87948 from ryevdokimov/always-default-to-region-select
Fix new region select with selection when over geometry
2024-02-05 14:54:10 +01:00
Rémi Verschelde
64cee8a99f
Merge pull request #87922 from ryevdokimov/all-tools-can-select-regression-2
Fix a regression when multiple nodes are selected and drag transform is attempted w/o gizmo
2024-02-05 14:51:48 +01:00
Rémi Verschelde
45e9d20d60
Merge pull request #87834 from TokageItLab/remove-dupecall-scene-tree-dock
Remove duplicated callings `set()` from SceneTreeDock
2024-02-05 14:50:09 +01:00
Rémi Verschelde
474d9b7e2e
Merge pull request #87771 from jsjtxietian/region-mismatch
Fix `TextureRegionEditor::_pan_callback` deferred called with only one argument
2024-02-05 14:49:45 +01:00
Rémi Verschelde
07655a0e11
Merge pull request #87623 from Calinou/editor-scene-drag-and-drop-tweak-modifier
Change scene drag-and-drop modifier behavior in the 2D and 3D editors
2024-02-05 14:49:21 +01:00
Rémi Verschelde
e096be85c4
Merge pull request #87125 from ryevdokimov/fix-removing-preview-nodes-on-ui-cancel
Clear drag preview nodes on `NOTIFICATION_DRAG_END`
2024-02-05 14:48:56 +01:00
Robert Yevdokimov
6718a9e4cf Fix bug that translates node during region select over geometry by always defaulting to region select 2024-02-04 13:34:18 -05:00
jsjtxietian
d06c526fb0 Fix TextureRegionEditor::_pan_callback deferred called with only one arg 2024-02-04 12:10:05 +08:00
smix8
4d0c21c131 Make MeshLibrary export do recursive depth-search for MeshInstance3D nodes
Makes MeshLibrary export do recursive depth-search for MeshInstance3D nodes.
2024-02-04 04:00:38 +01:00
Robert Yevdokimov
677bd9783a Fix a regression when multiple nodes are selected. and drag transform is attempted w/o gizmo 2024-02-03 21:45:08 -05:00
Robert Yevdokimov
7a2c386e28 Clear drag preview nodes on NOTIFICATION_DRAG_END 2024-02-03 18:50:33 -05:00
Rémi Verschelde
b4e2a24c1f
Merge pull request #87915 from dalexeev/editor-fix-parse-category-for-custom-categories
Editor: Fix `_parse_category()` is not called for custom categories
2024-02-03 23:23:21 +01:00
Rémi Verschelde
f69aa5e649
Merge pull request #87887 from jtakakura/fix-unintentional-translation-in-animation-tree
Fix unintentional translations in AnimationTree
2024-02-03 23:21:24 +01:00
Rémi Verschelde
607a3b2409
Merge pull request #87631 from ryevdokimov/decouple-message-from-framerate
Make viewport message dependent on framerate not physics step
2024-02-03 23:19:50 +01:00
Rémi Verschelde
0465027878
Merge pull request #87419 from KoBeWi/very_important_i
Fix shortcut name consistency in SceneTreeDock
2024-02-03 23:18:59 +01:00
Danil Alexeev
547f03b6d7
Editor: Fix _parse_category() is not called for custom categories 2024-02-03 23:54:32 +03:00
Junji Takakura
dcf4d82fb5 Fix unintentional translations in AnimationTree 2024-02-03 10:49:04 +09:00
Silc Lizard (Tokage) Renew
87ab959ae0 Remove duplicated set() methods from SceneTreeDock 2024-02-03 10:01:27 +09:00
Robert Yevdokimov
17e9fd06ce Make viewport message dependent on framerate not physics step 2024-02-02 14:47:30 -05:00
Robbie Cooper
30914c0434 Fix bounding boxes
Each time an AABB is rotated, it gets bigger. That means opposite rotations don't cancel out.

The previous implementation repeatedly rotates children AABBs as it climbs up the tree. This often resulted in selection boxes looking bigger than their contents.

This implementation calculates and applies a single final transformation to each AABB before it is merged with the others. After merging, there are no additional rotations, so AABBs remain accurate.

Co-Authored-By: Robert Yevdokimov <105675984+ryevdokimov@users.noreply.github.com>
2024-02-02 07:59:47 -05:00
Rémi Verschelde
7f5079f7c8
Merge pull request #87757 from hakro/vampire-origins
Do not reflect the origin lines in a mirror
2024-02-02 12:03:35 +01:00
Rémi Verschelde
8fc2407085
Merge pull request #86654 from ryevdokimov/fix-listening-for-input-escape
Prevent escape key from closing Editor Settings window when filtering for shortcuts
2024-02-02 12:01:52 +01:00
Rémi Verschelde
e0eccaeb60
i18n: Sync translations with Weblate
Still tracking 4.2 translations for now.

(cherry picked from commit 991454b8bd)
2024-02-02 11:38:01 +01:00
kobewi
a2c2caa2f4 Fix shortcut name consistency in SceneTreeDock 2024-02-01 22:40:23 +01:00
Aaron Franke
d1de00a2c8
Fix crash when previewing a scene with a mesh as the root node 2024-01-31 06:26:24 -06:00
Rémi Verschelde
a3d50f7714
Merge pull request #87769 from ryevdokimov/fix-all-tools-can-select-regression
Fix a regression that breaks gizmo transforming when 'View Gizmos' is off
2024-01-31 10:56:30 +01:00
Rémi Verschelde
3939a881f0
Merge pull request #87755 from KoBeWi/tidy_for_no_reason
Some editor code cleanup
2024-01-31 10:55:43 +01:00
Robert Yevdokimov
87d97fe7d8 Fix a regression in #86804 that breaks gizmos transforming when 'View Gizmos' is off 2024-01-30 22:31:52 -05:00
Hugo Locurcio
253ad63005
Clarify the FOV setting in the 3D editor camera is vertical FOV 2024-01-31 01:20:21 +01:00
Hakim
59c75b074a Do not reflect the origin lines in a mirror 2024-01-30 22:57:02 +01:00
kobewi
4ad74a5663 Some editor code cleanup 2024-01-30 21:33:31 +01:00
Rémi Verschelde
0cce6eb150
Merge pull request #87443 from YuriSizov/pms-hotter-younger-cousin
Improve layout and UX of the project manager
2024-01-30 19:10:46 +01:00