Commit graph

146 commits

Author SHA1 Message Date
Marius Hanl
74f64aaf98 Use InputMap actions consistently across all LineEdit's that filter an underlying Tree or ItemList.
- Instead of checking for Key::UP, Key::DOWN, Key::PAGEUP, Key::PAGEDOWN etc., we rather check for the action like 'ui_up' or 'ui_down'.
- Also use AcceptDialog's 'register_text_enter' functionality to consistently close a dialog when ENTER is pressed while the LineEdit has focus (instead of redirecting ENTER keys to e.g. the underlying Tree).
- Unify the LineEdit filter behavior for the SceneTreeDialog and corresponding usages
- Improve OK Button disablement (something should be selected)
2024-08-31 21:10:27 +02:00
Rémi Verschelde
18895b8aac
Merge pull request #93017 from Chaosus/vs_mesh_emitter_drag_and_drop
Allow drag & drop Mesh to create MeshEmitter in visual shaders
2024-08-28 00:11:01 +02:00
Yuri Rubinsky
f202a3d24e Add a material preview to visual shader editor 2024-08-17 08:27:54 +03:00
Rémi Verschelde
d6175a43da
Merge pull request #92576 from aaronfranke/shader-lang-editors
Make shader language editors inherit the same base class
2024-08-16 23:44:57 +02:00
Aaron Franke
99e997ae15
Make shader language editors inherit the same base class 2024-08-15 15:12:39 -07:00
kobewi
065dd099dd Remove empty bind_methods() 2024-08-15 08:24:32 +02:00
Yuri Rubinsky
3bbbedc144 Fix visual shader not being updated when switching tabs 2024-06-20 13:37:16 +03:00
Yuri Rubinsky
c2d0f3bafb Allow drag & drop Mesh to create MeshEmitter in visual shaders 2024-06-11 11:27:24 +03:00
Hendrik Brucker
62776842df [VisualShader] Add reroute node and improve port drawing 2024-05-13 03:26:01 +02:00
Aaron Franke
1bcbbe96c4
Organize existing code for editor plugins 2024-04-27 11:59:58 -07:00
Rémi Verschelde
429bf0281c
Merge pull request #89810 from Geometror/fix-79417
[VisualShader] Remove invalid graph connections when ports are removed
2024-04-08 18:42:30 +02:00
Hendrik Brucker
0b9b479ba7 [VisualShader] Remove invalid graph connections when ports are removed
Co-authored-by: EddieBreeg <eddiebreeg0@protonmail.com>
2024-04-08 15:31:27 +02:00
Hendrik Brucker
a81561cbd9 Add GraphFrame and integrate it in VisualShader 2024-04-04 15:11:00 +02:00
Muller-Castro
1638c1b28f Add const lvalue ref to editor/* container parameters 2024-02-26 15:28:15 -03:00
Hendrik Brucker
02a33b67a8 Redesign the graph editor for visual shaders 2024-02-22 20:40:09 +01:00
Hendrik Brucker
f59419bfe0 Add connection-related VisualShader operations
- Insert a node in a connection
- Drop an unconnected node on a connection to insert it
- Delete a connection
2024-01-19 11:38:59 +01:00
Wilson E. Alvarez
80fb8db31f
Remove unnecessary assignments
Co-authored-by: A Thousand Ships <96648715+AThousandShips@users.noreply.github.com>
2023-12-13 11:06:26 -05:00
Pedro J. Estébanez
fe4850c0d0 Use mingw-std-threads in MinGW builds 2023-11-18 11:56:05 +01:00
Rémi Verschelde
bc118b36ac
Merge pull request #82370 from YuriSizov/graphs-request-rename-close-delete-please
Rename close requests to delete requests in `GraphEdit`
2023-10-02 13:16:28 +02:00
Yuri Roubinski
4575cc0c6f Implement drop-down list properties to the custom visual shader nodes 2023-09-29 10:55:05 +03:00
Yuri Sizov
378ab38b1f Rename close requests to delete requests in GraphEdit 2023-09-26 16:41:39 +02:00
Hendrik Brucker
5afe78bd9c Clean up/refactor GraphNode and make it more flexible
Split GraphNode into GraphElement and GraphNode, add custom
titlebar, and adjust theming.
2023-09-07 17:29:06 +02:00
Yuri Rubinsky
998b48f722 Add handling of custom visual shader nodes from GDExtension 2023-05-06 08:19:12 +03:00
Yuri Rubinsky
c0a3129210 Prevent preview error for the instance parameter in visual shader 2023-02-03 15:28:04 +03:00
Raul Santos
c7f4ca36a4
Use PropertyUsageFlags enum in parse_property 2023-01-31 23:31:15 +01:00
Yuri Rubinsky
6713e0fa5b Add handling of script creation/deletion for custom visual shader nodes 2023-01-23 15:30:17 +03:00
Yuri Rubinsky
8180d38910 Fix node preview crashes after updating visual shader node 2023-01-14 14:08:00 +03:00
Yuri Rubinsky
fcbe7c1c2b Fix various crashes of ParameterRef nodes in visual shader 2023-01-12 14:21:59 +03:00
Rémi Verschelde
d95794ec8a
One Copyright Update to rule them all
As many open source projects have started doing it, we're removing the
current year from the copyright notice, so that we don't need to bump
it every year.

It seems like only the first year of publication is technically
relevant for copyright notices, and even that seems to be something
that many companies stopped listing altogether (in a version controlled
codebase, the commits are a much better source of date of publication
than a hardcoded copyright statement).

We also now list Godot Engine contributors first as we're collectively
the current maintainers of the project, and we clarify that the
"exclusive" copyright of the co-founders covers the timespan before
opensourcing (their further contributions are included as part of Godot
Engine contributors).

Also fixed "cf." Frenchism - it's meant as "refer to / see".
2023-01-05 13:25:55 +01:00
Yuri Rubinsky
ab17f197f0 Make custom visual shader nodes automatically updates from script 2022-12-08 12:55:23 +03:00
trollodel
c90d0bd84f Use forward-declarations in big editor classes 2022-11-29 09:59:43 +01:00
kobewi
8a3d2f4e0c Cleanup remaining EditorUndoRedoManager usages 2022-11-24 18:56:22 +01:00
Yuri Rubinsky
359d13cddc Fix the bounds of varying popup in visual shader editor 2022-11-16 22:05:09 +03:00
trollodel
ba9e619b51 Use forward-declarations in EditorPlugin where possible 2022-11-11 20:25:51 +01:00
Yuri Rubinsky
bf3d981c60 Remove subcategory parameter from AddOption in visual shader editor 2022-09-07 15:10:43 +03:00
Yuri Rubinsky
8191b3c110 Rename uniform to parameter across the engine 2022-09-01 11:42:57 +03:00
kobewi
ece3df3938 Add per-scene UndoRedo 2022-08-22 18:05:10 +02:00
Aaron Franke
4396f03b70
Rename EditorPropertyShaderMode to EditorPropertyVisualShaderMode 2022-08-15 14:39:53 -05:00
Yuri Sizov
86798d36db Remove CustomPropertyEditor completely 2022-08-01 22:57:05 +03:00
Yuri Sizov
9f55bd971e Extract EditorResourceConversionPlugin into its own source files and clean up editor includes 2022-07-31 21:14:15 +03:00
Yuri Rubinsky
f05fce405e Fix visual shader graph not correctly updating when multiple tabs opened 2022-07-16 16:43:06 +03:00
reduz
73c102f272 Redo the shader editor
* Shader editor is permanent (no longer transient).
* Can edit multiple files at the same time.

Likely fixes many usability issues (please lend me a hand Bugsquad team to identify them).
2022-05-28 11:03:16 +02:00
reduz
45af29da80 Add a new HashSet template
* Intended to replace RBSet in most cases.
* Optimized for iteration speed
2022-05-20 22:40:38 +02:00
Yuri Rubinsky
c84d050980 Add node list param to GraphEdit::delete_nodes_request signal 2022-05-17 13:28:21 +03:00
reduz
746dddc067 Replace most uses of Map by HashMap
* Map is unnecessary and inefficient in almost every case.
* Replaced by the new HashMap.
* Renamed Map to RBMap and Set to RBSet for cases that still make sense
  (order matters) but use is discouraged.

There were very few cases where replacing by HashMap was undesired because
keeping the key order was intended.
I tried to keep those (as RBMap) as much as possible, but might have missed
some. Review appreciated!
2022-05-16 10:37:48 +02:00
Hugo Locurcio
180e5d3028
Remove RES and REF typedefs in favor of spelled out Ref<>
These typedefs don't save much typing compared to the full `Ref<Resource>`
and `Ref<RefCounted>`, yet they sometimes introduce confusion among
new contributors.
2022-05-03 01:43:50 +02:00
bruvzg
de4c97758a
Fix more issues found by cppcheck. 2022-04-20 10:34:00 +03:00
Hendrik Brucker
cf58d23a72 Add Vector4 to VisualShader 2022-04-12 19:09:29 +02:00
Yuri Roubinsky
4d6790e9df Add _get_func_code/_is_available virtual functions to custom nodes 2022-03-08 16:23:44 +03:00
Yuri Roubinsky
15a87f8e92 Add varying support to visual shaders 2022-03-04 23:30:47 +03:00