Hendrik Brucker
a81561cbd9
Add GraphFrame and integrate it in VisualShader
2024-04-04 15:11:00 +02:00
Yuri Rubinsky
aa12241414
Refactor the parsing of port names in visual shader's expressions
2024-03-21 16:34:37 +03:00
Hendrik Brucker
02a33b67a8
Redesign the graph editor for visual shaders
2024-02-22 20:40:09 +01:00
jsjtxietian
ff089f8cea
Check is the ref shader valid in visual shader's update_option_menu
2024-01-25 11:54:23 +08: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
Yuri Roubinski
4575cc0c6f
Implement drop-down list properties to the custom visual shader nodes
2023-09-29 10:55:05 +03: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 Roubinski
01101134f4
Make the dragging connections more user-friendly in visual shaders
2023-07-20 15:00:19 +03:00
Rémi Verschelde
e4deaa2727
Merge pull request #76787 from RedworkDE/avoid-localvector-copy
...
Avoid making unnecessary copies of `LocalVector`
2023-06-20 00:01:55 +02:00
RedworkDE
1324c7d06a
Avoid making unnecessary copies of `LocalVector`
2023-05-06 20:39:03 +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
9e9eac4676
Use enum instead of int in virtual methods return type
2023-01-31 19:06:49 +01:00
Yuri Rubinsky
f101add78b
Add `uint` type support to visual shaders
2023-01-06 10:35:25 +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
bruvzg
0103af1ddd
Fix MSVC warnings, rename shadowed variables, fix uninitialized values, change warnings=all to use /W4.
2022-10-07 11:32:33 +03:00
Rémi Verschelde
d1a155e3cd
Fix various -Wmaybe-uninitialized warnings from GCC 12.2.1
...
Not sure why I didn't get those before, it may be due to upstream
changes (12.2.1 is a moving target, it's basically 12.3-dev), or simply
rebuilding Godot from scratch with different options.
2022-09-22 11:29:48 +02:00
Yuri Rubinsky
09c98cdde9
Add conversion for uniform_name property in visual shader
2022-09-07 08:19:02 +03:00
Rémi Verschelde
c82bbc38a5
Merge pull request #64952 from Chaosus/vs_rename_uniform_to_param
2022-09-02 13:49:53 +02:00
Johan Aires Rastén
b7e2d45233
Replace Vector2(i) with Size2(i) for methods returning a size
2022-09-01 20:04:17 +02:00
Yuri Rubinsky
8191b3c110
Rename `uniform` to `parameter` across the engine
2022-09-01 11:42:57 +03:00
Yuri Rubinsky
d4a10e7e04
Allow using integer varyings with `flat` interpolation modifier
2022-08-25 13:21:02 +03:00
kobewi
1abdffe7a0
Replace Array return types with TypedArray 2
2022-08-23 23:21:32 +02:00
Yuri Sizov
1a24c9e14b
Make `_validate_property` a multilevel method
2022-08-22 18:35:11 +03:00
Yuri Rubinsky
f05fce405e
Fix visual shader graph not correctly updating when multiple tabs opened
2022-07-16 16:43:06 +03:00
Yuri Rubinsky
d6622330d7
Remove engine version from visual shader
2022-06-10 13:17:16 +03: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
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
Yuri Roubinsky
8bf632240d
Continue to improve vector4 type in visual shaders
2022-04-22 22:29:26 +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
Yuri Roubinsky
a6e280c5de
Add some more fixes to visual shader
2022-02-07 11:28:42 +03:00
Yuri Roubinsky
db18faf660
Rename `PORT_TYPE_VECTOR` to `PORT_TYPE_VECTOR_3D`
2022-02-06 20:15:28 +03:00
Yuri Roubinsky
59af063636
Add support for 2D vector type to visual shaders
2022-02-02 19:59:34 +03:00
Yuri Roubinsky
538cff1351
Fix default input port hints for some modes in visual shader
2022-01-22 11:12:56 +03:00
Yuri Roubinsky
21cfcaa129
Add a GDScript template for `VisualShaderNodeCustom`
2022-01-06 12:06:33 +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 Roubinsky
e8a457ba89
Refactor render_mode in shaders, forbid declaring duplicates
2021-12-21 22:20:09 +03:00
Yuri Roubinsky
826e781bfa
Fix default_texture_param in shader pipeline to support uniform arrays
2021-11-12 12:53:40 +03:00
Rémi Verschelde
a6412e132a
Merge pull request #54660 from Chaosus/vs_particles_mesh_emitter
2021-11-10 19:55:25 +01:00
Rémi Verschelde
f253f7b6e6
VisualShader: Document enum args for virtual methods
...
Fixes #31563 .
2021-11-10 13:22:58 +01:00
Yuri Roubinsky
80b563672b
Added `MeshEmitter` node for particles in visual shader
2021-11-06 17:45:38 +03:00
Yuri Roubinsky
dcdf59cd73
Added 2D boolean hint for particle emitters in visual shaders
2021-11-05 12:45:57 +03:00
clayjohn
1b2cd9f251
Addition of FogVolumes, FogShaders, FogMaterial, and overhaul of VolumetricFog
...
Co-authored-by: Brian Semrau <brian.semrau@gmail.com>
2021-10-28 22:02:23 -07:00
Yuri Roubinsky
c299c54023
Make port previews in visual shader visible in other shader modes
2021-10-11 22:19:08 +03: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
e537a1f10e
Added missed limiters for Visual Shader node enums
2021-08-15 19:10:51 +03:00
Yuri Roubinsky
94c6817b51
Makes dictionary instead of string for visual shader version
...
Update doc/classes/VisualShader.xml
Co-authored-by: Hugo Locurcio <hugo.locurcio@hugo.pro>
2021-08-02 21:34:19 +03:00
Yuri Roubinsky
7d34701d63
Auto-set a first compatible uniform on dragging to create a UniformRef
2021-07-12 11:19:42 +03:00