Commit Graph

110 Commits

Author SHA1 Message Date
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
Rémi Verschelde 11572c6e30
Editor: Cleanup some includes dependencies
Removes some unnecessary includes from `editor_node.h`, and instead add
those where they're used.

Removes unnecessary `editor_node.h` includes in various editor classes.

Renames `dynamicfont` to `dynamic_font` in a couple files.

Misc cleanup while jumping through that rabbit hole.
2022-02-15 14:54:15 +01:00
trollodel 05b56f316d Remove most EditorNode constructor parameters and fields 2022-02-14 14:16:24 +01:00
Hendrik Brucker b396fd4eef Improve compilation speed (forward declarations/includes cleanup) 2022-02-12 02:46:22 +01:00
Yuri Roubinsky fd8c0f4a6a Refactor AddOption in visual shader editor 2022-01-28 15:28:37 +03:00
Yuri Roubinsky ea8d00282d A small visual shader editor refactoring 2022-01-07 11:27:06 +03:00
Rémi Verschelde fe52458154
Update copyright statements to 2022
Happy new year to the wonderful Godot community!
2022-01-03 21:27:34 +01:00
Yuri Sizov 2e4d18c929 Fix EditorInspectorPlugin virtual bindings and add parse_group callback 2021-11-10 17:56:59 +03:00
Yuri Roubinsky 6e00b4e330 Refactored copy/paste of visual shaders, implement 'Cut' feature 2021-10-31 10:42:32 +03:00
Yuri Roubinsky 2d0aa5ebc4 Repair Fog mode in visual shaders 2021-10-29 17:09:03 +03:00
Marcel Admiraal 87a4ba492e Remove unimplemented methods 2021-10-21 18:44:25 +01:00
reduz 3682978aee Replace BIND_VMETHOD by new GDVIRTUAL syntax
* New syntax is type safe.
* New syntax allows for type safe virtuals in native extensions.
* New syntax permits extremely fast calling.

Note: Everything was replaced where possible except for `_gui_input` `_input` and `_unhandled_input`.
These will require API rework on a separate PR as they work different than the rest of the functions.

Added a new method flag METHOD_FLAG_OBJECT_CORE, used internally. Allows to not dump the core virtuals like `_notification` to the json API, since each language will implement those as it is best fits.
2021-08-22 08:23:58 -03:00
Yuri Roubinsky f653cc13b9 Added port type content filter on port dragging in visual shader 2021-08-18 21:13:04 +03:00
Yuri Roubinsky 0eb97c11cf Few improvements for constants in visual shader 2021-08-11 13:14:16 +03:00
Rémi Verschelde 536825d004
Rename Curve3Texture to CurveXYZTexture
Neither name is a perfect match but `Curve3Texture` looked too similar to
`CurveTexture` and `Curve3D`, which made things confusing when picking a
texture type or browsing the API reference.
2021-07-14 00:30:58 +02:00
Yuri Roubinsky 4cf2f79892 Added Curve3Texture to Visual Shaders 2021-07-04 12:21:19 +03:00
Aaron Franke 2508fd0533
Use PROPERTY_USAGE_NONE instead of 0 for no property usage
Also use const more often.
2021-07-01 14:13:27 -04:00
Gregory Basile 8ab13f8ace Documentation search fixes
Updates rich_text_label so that the built-in documentation can be searched
Previously, it would only find the first result and would not select other results
Renames "_entered" functions to "_submitted"
2021-06-16 09:43:34 -07:00
Pedro J. Estébanez 04688b92ff Rename Reference to RefCounted 2021-06-11 18:48:42 +02:00
Yuri Roubinsky f632e36ae5 Continuation of work on visual particles system 2021-06-07 20:33:17 +03:00
Yuri Roubinsky 8456682222 Fix changing theme coloring for error label in VisualShader editor 2021-06-03 10:58:55 +03:00
Yuri Roubinsky 8f9b91dab1 Implements expandable color ports in visual shaders 2021-05-26 10:45:53 +03:00
Yuri Roubinsky 7f5b074b4b Fixes non-atomary action of dragging resources on visual shader graph 2021-05-22 08:16:56 +03:00
Yuri Roubinsky 8ae5c6c6ec Fix `sky` visual shader mode after last rename 2021-04-17 20:59:48 +03:00
Rémi Verschelde 0f0c0e5933
Style: Apply clang-tidy's `modernize-use-bool-literals` 2021-04-05 13:16:35 +02:00
Yuri Roubinsky 0fecd4ee4d Fix separator duplication in visual shader context menu 2021-04-04 17:55:42 +03:00
Yuri Roubinsky fe3051fcce Added Comment node to Visual Shaders 2021-02-21 12:40:17 +03:00
Yuri Roubinsky de5a8128d7 Unified several visual shader nodes 2021-01-18 13:32:12 +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
Yuri Roubinsky 69033672b7 Pushes visual shader code preview to separate window 2021-01-11 14:23:59 +03: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
Rafał Mikrut e1811b689b Initialize class/struct variables with default values in platform/ and editor/ 2020-12-02 16:09:11 +01:00
Yuri Roubinsky dd32d7b7ee Fixed some errors when changing port name in visual shader expressions 2020-12-02 13:27:37 +03:00
Yuri Roubinsky f402e1e675 Added VisualShaderNodeCurve to easy gather data from a CurveTexture 2020-10-18 09:57:15 +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 9b5d6f785b Refactor delete nodes functions in visual shader editor 2020-10-15 10:24:27 +03:00