Commit Graph

2862 Commits

Author SHA1 Message Date
Michael Alexsander
0bc7049099 Apply minor visual enhancements to the Sun/Env Preview 2021-02-23 11:21:26 -03:00
reduz
d6a9cff8b7 Add preview Sun and Environment
* Adds both a preview sun and preview environment to the 3D editor.
* They are valid as long as a DirectionalLight3D and WorldEnvironment are not in the scene.
* If any is added to the scene, the respective preview is disabled.
* Changed WorldEnvironment to better handle multiple node versions.
* Added a function in SceneTree to get the first node in a group.
* Fixed button minimum size to also consider font height if no text is there, this broke with the TextSever PR.
2021-02-22 16:56:29 -03:00
hilfazer
442e550114 Prevent selecting hidden nodes in 3D and Canvas Item editors 2021-02-21 11:58:31 +01:00
Yuri Roubinsky
fe3051fcce Added Comment node to Visual Shaders 2021-02-21 12:40:17 +03:00
reduz
083aa9b95e Refactor Process Mode
Implements https://github.com/godotengine/godot-proposals/issues/1835#issuecomment-727186192

* PauseMode is now ProcessMode, containing the following states:
	```
	PROCESS_MODE_INHERIT, // same as parent node
	PROCESS_MODE_NORMAL, // process only if not paused
	PROCESS_MODE_PAUSE_ONLY, // process only if paused
	PROCESS_MODE_ALWAYS, // process always
	PROCESS_MODE_DISABLED, // never process
	```
* NOTIFICATION_PAUSED and NOTIFICATION_UNPAUSED are received effectively when the node is paused and unpaused (not any longer when pause mode is set in SceneTree).
* Renamed some nodes that used ProcessMode/process_mode to specify a callback type to ProcessCallback to avoid clashes.
2021-02-18 20:39:55 -03:00
Rémi Verschelde
310496a89f
Merge pull request #45617 from RandomShaper/modernize_atomics
Modernize atomics (and fix `volatile`)
2021-02-18 19:40:31 +01:00
Pedro J. Estébanez
8e128726f0 Modernize atomics
- Based on C++11's `atomic`
- Reworked `SafeRefCount` (based on the rewrite by @hpvb)
- Replaced free atomic functions by the new `SafeNumeric<T>`
- Replaced wrong cases of `volatile bool` by the new `SafeFlag`
- Platform-specific implementations no longer needed

Co-authored-by: Hein-Pieter van Braam-Stewart <hp@tmm.cx>
2021-02-18 17:12:46 +01:00
Eric M
49714b0963 Removed hardcoded shortcuts from /scene and converted to input actions
This removes hardcoded actions from things like LineEdit and TextEdit.

Previously, things like copy, paste, etc were all hardcoded to Ctrl+C, Ctrl+V, etc. They could not be changed. This allows the possibility of them being changed, by making them use the action map. This has the added benefit of greatly simplifying the input handling logic in those controls. The logic which was previously in a huge and hard to follow switch statement has been extracted to individual methods.
2021-02-18 16:22:51 +01:00
reduz
64140eaf42 Reorganize Project Settings
-Advanced Settings toggle also hides advanced properties when disabled
-Simplified Advanced Bar (errors were just plain redundant)
-Reorganized rendering quality settings.
-Reorganized miscelaneous settings for clean up.
2021-02-18 11:23:34 -03:00
Rémi Verschelde
7f63d6e848
Merge pull request #46105 from Calinou/assetlib-retry-button-only-failure
Only display the assetlib Retry button if the download failed
2021-02-17 08:10:27 +01:00
Hugo Locurcio
508011a57f
Only display the assetlib Retry button if the download failed 2021-02-17 02:00:22 +01:00
Aaron Franke
7d9ad2b845
Use Vector3.UP as a default value for look_at's up vector 2021-02-16 18:33:23 -05:00
reduz
288540a690 Fix editor always redrawing
-Only update rendering settings when project settings change
-Fixes the update spinner (and editor rendering) updating all the time.
-Added a "project_settings_changed" signal to EditorNode and EditorPlugin
2021-02-13 14:57:28 -03:00
Rémi Verschelde
5011a22731
Merge pull request #45932 from goostengine/sprite-convert-compressed
Fix sprite editor conversion tools to handle compressed textures
2021-02-12 23:11:51 +01:00
Andrii Doroshenko (Xrayez)
1cd7a16c10 Fix sprite editor conversion tools to handle compressed textures 2021-02-12 21:42:07 +02:00
reduz
f8d03b98e7 Improve resource load cache
-Added a new method in Resource: reset_state , used for reloading the same resource from disk
-Added a new cache mode "replace" in ResourceLoader, which reuses existing loaded sub-resources but resets their data from disk (or replaces them if they chaged type)
-Because the correct sub-resource paths are always loaded now, this fixes bugs with subresource folding or subresource ordering when saving.
2021-02-11 15:44:28 -03:00
reduz
1aa2823fa3 Removed _change_notify
-For inspector refresh, the inspector now detects if a property change by polling a few times per second and then does update the control if so. This process is very cheap.
-For property list refresh, a new signal (property_list_changed) was added to Object. _change_notify() is replaced by notify_property_list_changed()
-Changed all objects using the old method to the signal, or just deleted the calls to _change_notify(<property>) since they are unnecesary now.
2021-02-10 19:31:24 -03:00
Rémi Verschelde
d93f75fae5
Merge pull request #45698 from KoBeWi/callables_are_love_callables_are_life
Change sort_custom/bsearch_custom to use Callables
2021-02-05 09:30:19 +01:00
kobewi
fb83d905da Change sort_custom/bsearch_custom to use Callables 2021-02-04 14:37:52 +01:00
Michael Alexsander
2d4cda89e1 Make margins obey the snap option in the TextureRegion editor 2021-02-03 22:44:17 -03:00
Tom Langwaldt
f995d6cd17
Fix swapped front/rear view 2021-02-02 19:44:38 +01:00
Yuri Roubinsky
ee3b51250a Fix port previews for uniforms in visual shaders 2021-02-02 13:41:05 +03:00
Rémi Verschelde
b24c24f64b
Merge pull request #45594 from JFonS/improve_3d_grid
3D editor grid improvements
2021-02-01 23:18:24 +01:00
jfons
73e62dffb9 3D editor grid improvements
This commit adds a view-dependant fade to the 3D viewport grid. It fades out
at steep view angles to hide the solid regions that appear far from the camera.
I also included a fade to hide the grid borders.

I added some improvements to the dynamic grid when the camera is in orthogonal mode.
It properly handles zoom now, and the grid center is now set to the intersection point
between the grid plane and the camera forward ray, keeping the grid
always visible.
2021-02-01 22:19:54 +01:00
Rémi Verschelde
d2e1216504
Merge pull request #37547 from aaronfranke/tau
Use Math_TAU and deg2rad/etc in more places and optimize code
2021-02-01 20:55:25 +01:00
Rémi Verschelde
2d134b6ddd
Merge pull request #45596 from Calinou/editor-add-viewport-resolution
Add viewport resolution to the 3D editor's View Information pane
2021-02-01 20:43:34 +01:00
Rémi Verschelde
d811f86102
Merge pull request #45281 from Chaosus/vs_unify
Unified several visual shader nodes
2021-02-01 08:56:03 +01:00
Rémi Verschelde
fe217efa2c
Merge pull request #45506 from Chaosus/vs_connection_fix
Attempt to connect to first correct port on dragging in visual shader
2021-02-01 08:55:06 +01:00
Hugo Locurcio
85ed695836
Add viewport resolution to the 3D editor's View Information pane 2021-01-31 00:21:36 +01:00
Aaron Franke
e829b7aee4
Unify URI encoding/decoding and add to C#
http_escape and percent_encode have been unified into uri_encode, and http_unescape and percent_decode have been unified into uri_decode.
2021-01-28 07:45:01 -05:00
Yuri Roubinsky
3927066cac Attempt to connect to first correct port on dragging in visual shader 2021-01-27 17:34:43 +03:00
Gordon MacPherson
86c7faa169 Fix zero scaling and material mappings being mapped to wrong fields
- fixes scale values of 0.0013 (det == 0.00004) not rendering, they should render even at small values, but not at zero like the editor grid plugin supplies zero exactly.
- fixes node_3d_editor_plugin visibility bug when scale is zero
- fix culling with small scaling values - which are still valid to be rendered like 0.00004

note: grid is still not fixed, it has det == 0 issues but this fixes one of them.
2021-01-26 19:48:18 +00:00
Rémi Verschelde
7601ccb0f1
Merge pull request #45202 from aaronfranke/assetlib-url
Move the Asset Library API URLs to the Editor Settings
2021-01-26 15:25:53 +01:00
Rémi Verschelde
268f32bada
Merge pull request #45226 from Chaosus/vs_expression_port
Auto-creates a port in visual shader expression on dragging from (and to)
2021-01-26 12:50:40 +01:00
Rémi Verschelde
887d3ee733
Merge pull request #43875 from addmix/create-physical-skeleton-collider-fix
Create physical skeleton collider orientation fix
2021-01-26 00:35:23 +01:00
Rémi Verschelde
6cba658934
Merge pull request #44194 from madmiraal/fix-font_selected_color
Change themes font_color_selected to font_selected_color
2021-01-26 00:03:40 +01:00
Yuri Sizov
9d9d0f0bc9 Fix minimap capturing events and improve its theme
Add an editor setting for minimap opacity in visual editors
2021-01-25 21:49:07 +03:00
reduz
a9beb7aa8c Shadow map rendering optimization
-All shadow rendering is done with raster now (no compute)
-All shadow rendering is done by rendering directly to the shadow atlas
-Improved how buffer clearing is done to optimize the above.
-Ability to set shadows as 16 bits.
2021-01-24 20:17:28 -03:00
Marcel Admiraal
8eb39f4e8b Change themes *_color_* to *_*_color
Changed:
font_color_accel -> font_accelerator_color
font_color_bg -> font_unselected_color
font_color_disabled -> font_disabled_color
font_color_fg -> font_selected_color
font_color_hover -> font_hover_color
font_color_hover_pressed -> font_hover_pressed_color
font_color_pressed -> font_pressed_color
font_color_readonly -> font_readonly_color
font_color_selected -> font_selected_color
font_color_shadow -> font_shadow_color
font_color_uneditable -> font_uneditable_color
icon_color_disabled -> icon_disabled_color
icon_color_hover -> icon_hover_color
icon_color_hover_pressed -> icon_hover_pressed_color
icon_color_normal -> icon_normal_color
icon_color_pressed -> icon_pressed_color

Also includes:
font_outline_modulate -> font_outline_color
tab_fg -> tab_selected
tab_bg -> tab_unselected
2021-01-24 06:28:49 +00:00
reduz
099dee35f4 Added GPU based cluster builder
Clustering is now GPU based, uses an implementation based on the Activision algorithm.
2021-01-19 23:31:06 +01:00
Yuri Roubinsky
4618e09f3b
Added SDF nodes to visual shader 2021-01-18 15:04:54 +01:00
Yuri Roubinsky
de5a8128d7 Unified several visual shader nodes 2021-01-18 13:32:12 +03:00
Hugo Locurcio
fa1d853eeb
Hide the rotation gizmo when editor cinematic preview is enabled
Cinematic preview enables the Camera3D preview automatically.

When previewing a Camera3D, the rotation gizmo isn't displayed as
it can't be used.
2021-01-18 03:19:05 +01:00
Yuri Roubinsky
d87303d058 Auto-creates a port in visual shader expression on dragging from 2021-01-16 12:57:09 +03:00
Yuri Roubinsky
c955a16b39 Fix invalid visual shader context menu popup size 2021-01-15 19:55:21 +03:00
Rémi Verschelde
c7fb7674c8
Merge pull request #44805 from Chaosus/vs_convert
Add convert options between constants and uniforms in visual shaders
2021-01-15 16:58:26 +01:00
Rémi Verschelde
d1f2644cfa
Merge pull request #45164 from Calinou/texture-region-editor-line-background
Draw a "background" line behind the dashed line in TextureRegion editor
2021-01-15 15:58:32 +01:00
Rémi Verschelde
8a33107086
Merge pull request #35572 from dankan1890/drag_sheet
Create spritesheet for SpriteFrames by drag and dropping.
2021-01-15 09:17:05 +01:00
Aaron Franke
925d28e822
Move the asset library API URLs to the Editor Settings 2021-01-15 01:30:40 -05:00
Hugo Locurcio
656aba1273
Draw a "background" line behind the dashed line in TextureRegion editor
This makes the dashed line visible on any background.
2021-01-13 17:22:37 +01:00
Rémi Verschelde
af878716f2
CI: Update to clang-format 11 and apply ternary operator changes 2021-01-12 19:32:53 +01:00
Rémi Verschelde
1218441b16
Merge pull request #44514 from madmiraal/split-os-execute
Split OS::execute into two methods
2021-01-12 16:17:04 +01:00
dankan1890
390ff22a8c Create spritesheet for SpriteFrames by drag and dropping.
Close godotengine/godot-proposals#378
2021-01-12 00:51:59 +01:00
Michael Alexsander
4194447a21 Fix script list only showing their names regardless of display option 2021-01-11 18:01:21 -03:00
Yuri Roubinsky
69033672b7 Pushes visual shader code preview to separate window 2021-01-11 14:23:59 +03:00
Marcel Admiraal
2a74b388d0 Split OS::execute into two methods
1. execute(): Executes a command and returns the results.
2. create_process(): Creates a new process and returns the new process' id.
2021-01-09 10:03:23 +00:00
Aaron Franke
1d5042c9e2
Use Math_TAU and deg2rad/rad2deg in more places and optimize code 2021-01-09 03:47:14 -05:00
Rémi Verschelde
3d359d1311
Merge pull request #44283 from jeffuntildeath/fix-stf-offset
Fixed incorrect offset of snap to floor
2021-01-08 07:53:45 +01:00
Rémi Verschelde
0abd7e7b35
Merge pull request #44892 from KoBeWi/gentle_drag
Commit CanvasItem state only if it changed
2021-01-05 14:12:59 +01:00
kobewi
036f6a3fa8 Commit CanvasItem state only if it changed 2021-01-05 13:06:15 +01:00
Rémi Verschelde
8a1c37dc22
Merge pull request #44893 from Chaosus/shader_reference
[4.0] Fix shader editor documentation link
2021-01-05 12:01:20 +01:00
Yuri Roubinsky
88924bbbc6 Fix shader editor documentation link 2021-01-05 13:46:33 +03:00
Rémi Verschelde
f4d8733777
Merge pull request #44890 from KiritoAM/my-bug-fix
Fix for reselecting a TileMap node without first de-selecting it #44824
2021-01-05 10:48:41 +01:00
Rafał Mikrut
8e7cbf315e Fix Leak with Gradient in Node3DEditorViewport 2021-01-04 10:06:46 +01:00
andrew-softdev
15cffe060c Fix for reselecting a TileMap node without first de-selecting it 2021-01-03 15:44:36 +00:00
Rémi Verschelde
b5334d14f7
Update copyright statements to 2021
Happy new year to the wonderful Godot community!

2020 has been a tough year for most of us personally, but a good year for
Godot development nonetheless with a huge amount of work done towards Godot
4.0 and great improvements backported to the long-lived 3.2 branch.

We've had close to 400 contributors to engine code this year, authoring near
7,000 commit! (And that's only for the `master` branch and for the engine code,
there's a lot more when counting docs, demos and other first-party repos.)

Here's to a great year 2021 for all Godot users 🎆
2021-01-01 20:19:21 +01:00
Yuri Roubinsky
c98c6eadbe Add convert options between constants and uniforms in visual shaders 2020-12-30 13:07:08 +03:00
Rémi Verschelde
59b30e1d23
Merge pull request #44709 from Calinou/editor-frame-time-color
Color 3D editor frame time labels depending on the performance level
2020-12-29 17:41:40 +01:00
Rémi Verschelde
edccc0bbdf
Merge pull request #44759 from Huberion/master
Fix Scrollbar range calculation error
2020-12-29 11:05:44 +01:00
Hugo Locurcio
8221037be0
Add an editor setting for the 3D selection box color
A restart is required to apply the setting change.
2020-12-29 07:35:59 +01:00
Rémi Verschelde
6cebb8c117
Merge pull request #44586 from madmiraal/rename-stepify
Rename Math::stepify to snapped
2020-12-28 21:46:43 +01:00
Rémi Verschelde
44357ddc28
Editor: Fix invalid use of Node::get_viewport() after rename of EditorNode::get_viewport()
Fixes #44761, was a regression from #44524.

The PR passed CI because EditorNode::get_viewport() used to shadow Node::get_viewport()
(which was a bug in itself, fixed by #44524), so once it was renamed the existing code
relying on it fell back to the now available Node::get_viewport().
This might bite some thirdparty modules too.
2020-12-28 19:51:39 +01:00
Rémi Verschelde
4ca98c7a35
Merge pull request #44183 from madmiraal/box_shape-size
Use a size Vector for adjusting the size of Rectangles and Boxes
2020-12-28 16:06:50 +01:00
Rémi Verschelde
058f3fe069
Merge pull request #44149 from madmiraal/rename-tangent-orthogonal
Rename Vector2.tangent() to Vector2.orthogonal()
2020-12-28 16:00:12 +01:00
BiBi
849a8b5f58
Fix Scrollbar range calculation error
When zoomed in, the right and bottom edges of the resource image will be outside the viewing area.
2020-12-28 22:49:18 +08:00
Rémi Verschelde
8f4c4bb610
Merge pull request #44434 from madmiraal/rename-camera3d-near-and-far
Rename Camera3D near and far getters and setters
2020-12-28 14:57:31 +01:00
Rémi Verschelde
feb4e5ed2c
Merge pull request #44569 from madmiraal/rename-unselect-deselect
Rename unselect to deselect
2020-12-28 14:53:43 +01:00
Marcel Admiraal
b743a2ef3c Rename Math::stepify to snapped 2020-12-28 13:01:30 +00:00
Marcel Admiraal
5b937d493f Rename empty() to is_empty() 2020-12-28 10:39:56 +00:00
Rémi Verschelde
783ec77dbf
Merge pull request #44500 from Calinou/editor-gizmo-hover-brightness-variable
Move the brightness factor for highlighted 3D gizmos to a variable
2020-12-27 23:16:47 +01:00
Hugo Locurcio
507e9b12a4
Move the brightness factor for highlighted 3D gizmos to a variable
See
8522ac7711 (r45230326).
2020-12-27 22:20:36 +01:00
kobewi
e0e55a8358 Fix Layout menu not working 2020-12-27 20:11:36 +01:00
Hugo Locurcio
b188913384
Color 3D editor frame time labels depending on the performance level
This provides easier visual grepping for each value
(CPU time, GPU time, FPS).
2020-12-26 22:59:46 +01:00
Yuri Roubinsky
8c2363922e Makes strings translatable on right-click menu in visual shader 2020-12-25 16:43:39 +03:00
Rémi Verschelde
c4c211c3b7
Merge pull request #44605 from madmiraal/rename-control-margin
Rename Control margin to offset
2020-12-23 18:24:00 +01:00
Marcel Admiraal
4b8b803931 Rename Control margin to offset 2020-12-23 06:25:56 +00:00
Rémi Verschelde
8ad0ff8ae5
Merge pull request #44487 from bruvzg/ctl_fixes_2
[CTL] Fix RTL scrolling and tabs selection.
2020-12-23 01:15:29 +01:00
Michael Alexsander
ed488b72a6 Fix filename disambiguation on scripts in certain occasions 2020-12-22 17:27:06 -03:00
Marcel Admiraal
7b293eddfb Rename unselect to deselect 2020-12-21 10:26:41 +00:00
bruvzg
1adea98d07
Use integer text position in scroll container, TextEdit and canvas editor, to ensure sharp text rendering.
Use integer font align/advance with any font scaling, to ensure sharp text rendering.
2020-12-21 07:49:27 +02:00
Michael Alexsander
221738fb81 Disable "Commit" button in VCS plugin if there's no commit message 2020-12-20 14:52:26 -03:00
Marcel Admiraal
ecf8ae5bcf Rename Camera3D near and far getters and setters
Renames:
- get_znear() -> get_near()
- set_znear() -> set_near()
- get_zfar() -> get_far()
- set_zfar() -> set_far()
2020-12-20 13:46:57 +00:00
Pedro J. Estébanez
b7367ac426 Add animation reset track feature
As a bonus, to have consistency between use Beziers and create insert tracks, use Beziers also gets a default via editor settings that is used when the confirmation dialog is disabled, instead of just falling back to creating non-Bezier tracks.
2020-12-20 12:45:08 +01:00
Rémi Verschelde
e9d12f9e4e
Merge pull request #44521 from madmiraal/rename-rect2-clip
Rename Rect2 and Rect2i clip() to intersection()
2020-12-19 21:32:14 +01:00
Rémi Verschelde
93acaca8ca
Merge pull request #44528 from Janglee123/no-commit-msg-pre-fill
Removed default commit message
2020-12-19 21:29:29 +01:00
janglee
718227df6b Removed default commit message 2020-12-20 00:09:18 +05:30
Hugo Locurcio
7ae487d2bb
Increase the default Camera Zfar to 4000
This makes it possible to view far away objects without
having to tweak any settings. This results in a more usable
editor when working on large-scale levels.

This change should have no impact on performance, but note that
Z-fighting will be visible at a distance. This can be made less
visible by increasing the Znear value (however, doing so will cause
nearby surfaces to disappear).

This change was also applied to the editor, but it will only
apply to newly created scenes.

This also changes the default camera settings in the glTF importer
to match the Camera node's defaults.
2020-12-19 14:52:44 +01:00
Marcel Admiraal
2df9a8ccad Rename Rect2 and Rect2i clip() to intersection() 2020-12-19 12:59:08 +00:00
reduz
d2302f53d6 Implement automatic LOD (Level of Detail)
-Happens on import by default for all models
-Just works (tm)
-Biasing can be later adjusted per node or per viewport (as well as globally)
-Disabled AABB.get_support test because its broken
2020-12-18 15:48:03 +01:00
Marcus Brummer
ec97962261 Changed the rotation gizmo handle to use the active axis color 2020-12-16 14:32:02 +01:00
Rémi Verschelde
f9d922b057
Merge pull request #36530 from KoBeWi/text_with_backdrop
Add outline to ruler tool
2020-12-15 13:00:15 +01:00
Rémi Verschelde
a8df739d7e
Merge pull request #44384 from Calinou/increase-manipulator-gizmo-opacity
Increase the default 3D manipulator gizmo opacity for better visibility
2020-12-15 12:57:52 +01:00
Hugo Locurcio
8522ac7711
Increase the default 3D manipulator gizmo opacity for better visibility
- Brighten gizmos when highlighted to make the difference between a
  non-highlighted and a highlighted gizmo more visible.
- Tweak the manipulator gizmo size property hint.
2020-12-14 23:44:51 +01:00
Tomasz Chabora
f2751f47b0 Add outline to ruler tool 2020-12-14 23:29:22 +01:00
Marcel Admiraal
8509c8c8fc Rename AcceptDialog get_ok() to get_ok_button()
Also renames:
- AcceptDialog add_cancel() to add_cancel_button()
- ConfirmationDiaglog get_cancel() to get_cancel_button()
2020-12-14 18:43:52 +00:00
jeffuntildeath
4f171afecc Snap To Floor improperly offsets node
fix for issue #44282

AABB for collision geometry was being calculated based on parent nodes transform without consideration for collision geometries translation.
Also hopefully clarified logic for selecting starting point for ray cast
2020-12-10 20:36:51 -06:00
Rémi Verschelde
d4d05783d6
Merge pull request #44248 from Nickswoboda/fix-dragging-0-items
Fix scene being modified when arrows are pressed with no node selected
2020-12-10 11:15:34 +01:00
Rémi Verschelde
47538ef9a4
Merge pull request #44234 from jeffuntildeath/master
fix for snap to floor editor crash bug
2020-12-10 10:52:24 +01:00
Nick Swoboda
66827337fd Fix scene being modified when arrows are pressed with no node selected 2020-12-09 16:52:12 -08:00
jeffuntildeath
52f6e0b5ad fix for snap to floor editor crash bug
fix for issue #44231: snap_selected_nodes_to_floor() results in an editor
crash when a child collisionshape has invalid shape object
2020-12-09 12:09:41 -06:00
Marcus Brummer
0e4f2ca860 Asset Library: Scroll up the ScrollContainer after page load 2020-12-09 15:24:26 +01:00
Rémi Verschelde
c567a97178
Merge pull request #44218 from aaronfranke/grid-inst-err
Fix trying to set grid visibility on an invalid instance
2020-12-09 13:02:38 +01:00
Rémi Verschelde
114f97ff11
Merge pull request #44128 from KoBeWi/🧹
Cleanup unused engine code
2020-12-09 13:01:50 +01:00
Aaron Franke
8c1d94ebae
Fix trying to set grid visibility on an invalid instance 2020-12-09 06:33:20 -05:00
Tomasz Chabora
2c048ea164 Cleanup unused engine code 2020-12-09 12:12:36 +01:00
bruvzg
644f739660
Static analyzer fixes:
Removes unused code in OS.
Fixes return types.
Fixes few typos.
2020-12-09 10:17:53 +02:00
Rémi Verschelde
90bdba576a
Merge pull request #43742 from qarmin/editor_modules_default_values
Initialize class/struct variables with default values in platform/ and editor/
2020-12-08 15:53:42 +01:00
Marcel Admiraal
d5d99aaed6 Use rectangle size instead of extents for Shape dimensions 2020-12-08 11:57:46 +00:00
Marcel Admiraal
a24c38d1a8 Rename Vector2.tangent() to Vector2.orthogonal() 2020-12-06 18:16:06 +00:00
Aaron Franke
1b348b3c17
Remove connect *_compat methods 2020-12-05 17:56:47 -05:00
Nick Swoboda
70c946f82d Change minimum snap step of Tile Set to 1 2020-12-05 08:18:16 -08:00
Rémi Verschelde
c574b4d086
Merge pull request #44091 from madmiraal/rename-cubemesh-boxmesh
Rename CubeMesh to BoxMesh
2020-12-05 16:48:15 +01:00
Marcel Admiraal
df6b061dbb Rename CubeMesh BoxMesh 2020-12-05 11:48:26 +00:00
Aaron Franke
5ef62e546f
Rename EditorNode3DGizmoPlugin "get_name" to "get_gizmo_name" 2020-12-04 19:34:50 -05:00
Rémi Verschelde
a84ad91280
Merge pull request #43896 from RandomShaper/fix_rel_probe_vis
Put misc. 3D tool visible instances on their own layer
2020-12-03 13:29:16 +01:00
reduz
70f5972905 Refactored Mesh internals and formats.
-Changed how mesh data is organized, hoping to make it more efficient on Vulkan and GLES.
-Removed compression, it now always uses the most efficient format.
-Added support for custom arrays (up to 8 custom formats)
-Added support for 8 weights in skeleton data.
-Added a simple optional versioning system for imported assets, to reimport if binary is newer
-Fixes #43979 (I needed to test)

WARNING:

-NOT backwards compatible with previous 4.x-devel, will most likely never be, but it will force reimport scenes due to version change.
-NOT backwards compatible with 3.x scenes, this will be eventually re-added.
-Skeletons not working any longer, will fix in next PR.
2020-12-02 13:07:59 -03:00
Rafał Mikrut
e1811b689b Initialize class/struct variables with default values in platform/ and editor/ 2020-12-02 16:09:11 +01:00
Rémi Verschelde
d1231be1c8
Merge pull request #41095 from ThakeeNathees/GDScript-Documentation
GDScript(2.0) Documentation generation system
2020-12-02 14:15:38 +01:00
Rémi Verschelde
fbbbd9f601
Merge pull request #39743 from aaronfranke/limit-zoom
Limit the editor zoom and freelook speed based on camera settings
2020-12-02 13:35:51 +01:00
Yuri Roubinsky
dd32d7b7ee Fixed some errors when changing port name in visual shader expressions 2020-12-02 13:27:37 +03:00
Aaron Franke
896a297c1f
Limit the zoom and freelook speed based on camera settings 2020-12-01 16:14:24 -05:00
Thakee Nathees
42bfa16996 Refactor DocData into core and editor (DocTools) parts 2020-12-02 00:48:39 +05:30
Yuri Roubinsky
b74f1abd25 Fix few bugs in visual shader expressions
Fixed few bugs in visual shader expressions
2020-12-01 16:55:52 +03:00
Yuri Roubinsky
a9e5701e2a Fixed crash in visual shader on changing input when preview is visible 2020-12-01 12:11:44 +03:00
Rémi Verschelde
c653e9c470
Merge pull request #42825 from Chaosus/fix_grid_hotkey
Changes 'always show grid' hotkey to prevent conflict with 'pan mode'
2020-11-30 19:09:13 +01:00
Thakee Nathees
d0e7d9b62f Documentation generation for GDScript
- ClassDoc added to GDScript and property reflection data were extracted
from parse tree

- GDScript comments are collected from tokenizer for documentation and
applied to the ClassDoc by the GDScript compiler

- private docs were excluded (name with underscore prefix and doesn't
have any doc comments)

- default values (of non exported vars), arguments are extraced from the
parser

- Integrated with GDScript 2.0 and new enums were added.

- merge conflicts fixed
2020-11-29 19:45:36 +05:30
Yuri Roubinsky
82d64ebd19 Fixed several visual shader inputs
Fixed several inputs in visual shaders
2020-11-29 16:10:05 +03:00
Yuri Roubinsky
07e752585c Fixed invalid visual shader outputs (TRANSMISSION, ALPHA_SCISSOR) 2020-11-28 20:42:59 +03:00
Rémi Verschelde
a09846e015
Merge pull request #42109 from EricEzaM/PR/input-and-shortcuts-rework
Shortcuts rework - fixed issues with input propagation and triggering of unwanted shortcuts.
2020-11-28 09:04:25 +01:00
Rémi Verschelde
a6751e6c58
Merge pull request #41100 from bruvzg/ctl_text_server_interface
[Complex Text Layouts] Implement TextServer interface.
2020-11-28 09:03:15 +01:00
Pedro J. Estébanez
4eb3286230 Put misc. 3D tool visible instances on their own layer
This makes that visible stuff invisible to ReflectionProbes, whose preview in the editor shouldn't involve them.
2020-11-26 20:11:00 +01:00
bruvzg
3be31c4960
[Complex Text Layouts] Refactor TextEdit and CodeEdit controls. 2020-11-26 14:25:50 +02:00
bruvzg
99666de00f
[Complex Text Layouts] Refactor Font class, default themes and controls to use Text Server interface.
Implement interface mirroring.
Add TextLine and TextParagraph classes.
Handle UTF-16 input on macOS and Windows.
2020-11-26 14:25:48 +02:00
Yuri Roubinsky
3e1e01b7ab Added extra warning to VisualShaderNodeTexture + fix warning appearing 2020-11-26 14:53:47 +03:00
Addmix
177e62a7e4 Update skeleton_3d_editor_plugin.cpp 2020-11-25 17:35:27 -07:00
Rémi Verschelde
613b76cfd5
Merge pull request #43861 from JFonS/fix_gizmo_defval
Fix binding of default value in EditorSpatialGizmoPlugin::get_material()
2020-11-25 19:28:05 +01:00
jfons
e6949dae72 Fix binding of default value in EditorSpatialGizmoPlugin::get_material()
It was commented for some reason I can't remember.
2020-11-25 18:55:07 +01:00
Eric M
7941235e06 Add is_valid() check for InputEventKey in CanvasItemEditor. 2020-11-23 21:52:15 +10:00
Eric M
efe5c250d5 Implement new shortcuts system.
unhandled_key_input changed to unhandled_button_input. Controls can set a 'shortcut_context' which they can then use to determine if their shortcuts should be triggered or not, based on if the viewport's focused GUI control is a child of their 'shortcut context'.
2020-11-23 21:14:26 +10:00
Rémi Verschelde
c9bd11a479
Merge pull request #43668 from GryphonClaw/master
added shortcuts/hotkeys for tileset editor plugin collision buttons, …
2020-11-19 14:17:23 +01:00
Aaron Franke
71d1909b39
Update the 3D grid when the "View Grid" checkbox is changed 2020-11-19 05:29:37 -05:00
GryphonClaw
cf582262c2 added shortcuts/hotkeys for tileset editor plugin collision buttons, with suggested changes. 2020-11-18 19:54:27 -08:00
Haoyu Qiu
381ba7d554 Fixes rotation in select mode on macOS 2020-11-18 18:16:22 +08:00
Aaron Franke
02161aad5a
Remove empty lines around braces with the formatting script 2020-11-16 23:38:11 -05:00
Rémi Verschelde
a7d610db16
Merge pull request #43408 from rcorre/path-gizmos-4.0
Make Path3D handles visible and consistent with 2D.
2020-11-12 13:12:49 +01:00
Ryan Roden-Corrent
8458ba0aef
Proposal 1246: Make Path3D handles more visible.
Resolves godotengine/godot-proposals#1246.

It is difficult to tell the difference between the handles for adjusting
curves and the points themselves when looking at a Path gizmo.
This re-uses the icons used for Path2D.

Unlike Path2D, this does not use a different icon for smooth vs sharp
points, as using a potentially different material for each point would
prevent batching the points in add_handles (and adding them out-of-order
messes up other logic based on handle indices).

This includes a public API change to allow specifying a texture for a
handle material. This allows spatial gizmo plugins to customize the way
a handle is rendered, if desired, but does not break existing behavior
(as providing no texture uses the default).

The path handle icons were resized as well.  16x16 is the standard icon
size. These icons were 10x10 rather than 16x16, and appeared rather
small in the editor.

To resize, I:

- Opened the original in Inkscape
- Resized the document to 16x16
- Opened the transform dialog
- Scaled by 160% proportionally
- Used Align/Distribute to center on the page
- Saved the document
- Cleaned with `svgcleaner --multipass`
2020-11-12 06:37:56 -05:00
Hugo Locurcio
8a3a4fa3a0
Improve the 3D editor selection box appearance
- Draw two boxes slightly offset from each other to give the illustion
  of a thicker outline.
- Decrease the offset compared to the 3D node's AABB to give a more
  accurate representation of its size.
- Make the box fully visible instead of only displaying the corners.
- Draw a x-ray version of the box that's more translucent, but visible
  through walls. This helps make the box more visible while still
  having a sense of depth.
- Use an orange color similar to the 2D editor.
2020-11-09 16:24:12 +01:00
reduz
127458ed17 Reorganized core/ directory, it was too fatty already
-Removed FuncRef, since Callable makes it obsolete
-Removed int_types.h as its obsolete in c++11+
-Changed color names code
2020-11-07 20:17:12 -03:00
reduz
f2397809a8 Refactored Variant Operators.
-Using classes to call and a table
-For typed code (GDS or GDNative), can obtain functions to call prevalidated or ptr.
2020-11-06 12:45:50 -03:00
Aaron Franke
a4f963f2c9
Move call to update the 3D grid into check for updating the view 2020-11-04 04:03:28 -05:00
Rémi Verschelde
be14d9d644
Merge pull request #42979 from Mallos/fix/tilemap-floodfill
fix(editor): TileMap floodfill with same tile ID and different variation
2020-11-02 17:05:43 +01:00
Rémi Verschelde
9ab6cef2ad
Merge pull request #43192 from YeldhamDev/poly2deditor_buttons_flat
Set previous tool buttons in the Polygon2D editor to be flat again
2020-10-29 21:35:34 +01:00
Michael Alexsander
3b0cb48bcd Set previous tool buttons in the Polygon2D editor to be flat again 2020-10-29 16:53:41 -03:00
Michael Alexsander
4b74019ca3 Fix "Move Points" button sometimes not showing up on UV mode in the Polygon2D editor 2020-10-29 16:45:17 -03:00
Rémi Verschelde
a3396fabd5
Merge pull request #42995 from Ev1lbl0w/bugfix-zoom-visibility
Fix visibility issue with zoom label
2020-10-26 11:15:50 +01:00
Ev1lbl0w
0a581a39d4
Fix visibility issue with zoom label 2020-10-26 09:44:17 +00:00
Rémi Verschelde
368a464e49
Merge pull request #42229 from Calinou/2d-editor-improve-undo-log-messages
Improve undo log messages in the 2D editor for additional context
2020-10-26 09:34:57 +01:00
Rémi Verschelde
8ee44cc60c
Merge pull request #43075 from Xrayez/color-ramp-to-gradient
Fixup `ColorRamp` to `Gradient` renames
2020-10-26 08:44:27 +01:00
Rémi Verschelde
33ff670d30
Merge pull request #43050 from Pleto/enhance_tileset_sorting
Enhancement for tileset sorting
2020-10-26 08:10:53 +01:00
Pleto
0e392bd177 Enhancement for tileset sorting 2020-10-26 06:34:14 +02:00
David Sichma
5b1ddcbf40 Gizmo handles transparent again 2020-10-25 23:01:22 +01:00
Andrii Doroshenko (Xrayez)
8ce2f401dd Fixup ColorRamp to Gradient renames 2020-10-25 18:32:44 +02:00
reduz
84d734da0e Refactored 2D shader and lighting system
-Removed normal/specular properties from nodes
-Create CanvasTexture, which can contain normal/specular channels
-Refactored, optimized and simplified 2D shaders
-Use atlas for light textures.
-Use a shadow atlas for shadow textures.
-Use both items aboves to make light rendering stateless (faster).
-Reorganized uniform sets for more efficiency.
2020-10-24 15:57:25 -03:00
Rémi Verschelde
11f362b510
Merge pull request #35766 from YeldhamDev/poly2d_uv_editor_improvements
Minor improvements to the Polygon 2D UV editor
2020-10-24 01:47:40 +02:00
Eric Tuvesson
8cf88f8ff4 fix(editor): Create new icon for TileMap Rectangle
ref: #42972
2020-10-22 13:28:34 +02:00
Eric Tuvesson
cefca25796 fix(editor): TileMap floodfill with same tile ID and different variation
Closes https://github.com/godotengine/godot/issues/40435
2020-10-21 23:56:44 +02:00
Rémi Verschelde
17f682226d
Merge pull request #42904 from Xrayez/rects-rename-fixup
Fixup `ColorRect` and `TextureRect` renames
2020-10-19 22:34:40 +02:00
Juan Linietsky
85ebf40b6c
Merge pull request #38097 from Calinou/add-viewport-debanding
Add a debanding property to Viewport
2020-10-19 14:15:44 -03:00
Hugo Locurcio
996740de43
Improve undo log messages in the 2D editor for additional context
Undo/redo log messages will now specify the modified node's
name (or number of modified nodes if several were modified).
On top of that, the new position/rotation/scale/pivot offset
will also be mentioned in the message.
2020-10-19 18:59:52 +02:00
Andrii Doroshenko (Xrayez)
9c3a33a4e8 Fixup ColorRect and TextureRect renames 2020-10-19 19:34:35 +03:00
Rémi Verschelde
6b20859984
Merge pull request #42558 from Chaosus/vs_curve
Added visual shader node to easy gather data from a CurveTexture
2020-10-19 14:58:45 +02:00
Yuri Roubinsky
f402e1e675 Added VisualShaderNodeCurve to easy gather data from a CurveTexture 2020-10-18 09:57:15 +03:00
Yetizone
09356c1f67 node_3d_editor_plugin.h: Update header guard 2020-10-17 18:52:17 +03:00
Yuri Roubinsky
1c546fdaea Changes 'always show grid' hotkey to prevent conflict with 'pan mode' 2020-10-15 17:30:43 +03:00
Yuri Roubinsky
8351266117 Fix visual shader node expression undo/redo for set_size and expression 2020-10-15 16:11:38 +03:00
Yuri Roubinsky
1fee310a9a Fix copy/paste/duplicate for particle mode in visual shaders 2020-10-15 11:33:06 +03:00
Yuri Roubinsky
9b5d6f785b Refactor delete nodes functions in visual shader editor 2020-10-15 10:24:27 +03:00
Rémi Verschelde
1aa8f356e1
Merge pull request #42489 from auderer/tilemapeditor-refocus
Reset TileMapEditor painting state on application refocus
2020-10-13 10:00:04 +02:00
Yuri Roubinsky
bf37ab52b3
Merge pull request #42692 from Chaosus/vs_add_metallic
Adds Metallic to spatial light input of visual shaders
2020-10-10 17:47:56 +03:00
Yuri Roubinsky
f4eef287f9 Adds Metallic to spatial light input of visual shaders 2020-10-10 16:55:36 +03:00
Rémi Verschelde
ca2c0b8937
Merge pull request #42568 from DavidSichma/fix-aabb-update
Make AABB change trigger bounding box update
2020-10-10 10:55:52 +02:00
reduz
26f5bd245c Implement GPU Particle Collisions
-Sphere Attractor
-Box Attractor
-Vector Field
-Sphere Collider
-Box Collider
-Baked SDF Collider
-Heightmap Collider
2020-10-09 13:25:47 -03:00
Haoyu Qiu
e9bec0d76b Adds pan gesture to StateMachine editor 2020-10-09 20:15:32 +08:00
David Sichma
7701889048 aabb change updates bounding box
spatial editor will now update the bounding box if aabb or transform
changes
2020-10-05 12:56:57 +02:00
Duroxxigar
4834e14493 Updated getters and setters names for toplevel 2020-10-02 19:09:01 -04:00
Michael Auderer
6d510453e5
initialize refocus_over_tile to false
Co-authored-by: Tomek <kobewi4e@gmail.com>
2020-10-02 10:42:12 -04:00
Rémi Verschelde
19f72beebb
Merge pull request #42451 from Duroxxigar/rename-toplevel
Renamed toplevel to be top_level
2020-10-02 10:57:23 +02:00
Michael Auderer
70a4cd1afe Reset TileMapEditor painting on application refocus
Treats application unfocus as a mouse release for
TOOL_PAINTING, by finishing the undo state and
resetting the tool. Also sets a flag to prevent extra
lines from being drawn when the application is refocused.

fixes #42398, fixes #24970
2020-10-02 01:48:14 -04:00
Yuri Roubinsky
17d588f7b3
Merge pull request #42467 from Chaosus/vs_fix_bug
Updates size of float constant in visual shader if empty is selected
2020-10-01 18:33:23 +03:00
Yuri Roubinsky
fa35733b4c Updates size of float constant in visual shader if empty is selected 2020-10-01 18:19:36 +03:00