1
0
mirror of https://github.com/godotengine/godot.git synced 2025-11-04 12:00:25 +00:00
Commit Graph

306 Commits

Author SHA1 Message Date
Max Piepenbrink
b28800e580 Include alpha in visual shader light function inputs
Lack of access to the alpha accumulator makes some effects that are sensitive to lighting impossible with the visual shader graph. This is an easy fix thankfully as it simply just wasn't exposed.
2025-03-11 20:57:03 -07:00
A Thousand Ships
5113022dfe Clean up some uses of String::substr
Cases where the end position is either equvalent to the default or past
the end of the string.
2025-03-07 14:50:38 +01:00
aaronp64
c4db6687f9 Generate global code for VisualShader nodes that connect to VaryingSetters
Updated visual shader code to call generate_global_per_node() for nodes connected to VaryingSetter nodes, even if they don't connect directly to Output.
2025-01-16 15:14:12 -05:00
A Thousand Ships
a1846b27ea Improve use of Ref.is_null/valid
Use `is_null` over `!is_valid` and vice versa.
2024-12-23 16:35:02 -05:00
Yufeng Ying
73d85f46c9 Remove unused headers in scene.
Co-authored-by: Thaddeus Crews <repiteo@outlook.com>

Co-authored-by: A Thousand Ships <96648715+AThousandShips@users.noreply.github.com>
2024-12-24 00:40:09 +08:00
Lukas Tenbrink
b5c31ebb41 Add contains_char() for single-character 'contains' calls. 2024-12-06 20:23:35 +01:00
rune-scape
d58b2e879f Get rid of easily removable uses of const_cast 2024-12-01 17:50:13 -08:00
Chaosus
a64b3fd3f8 Allow SCREEN_UV to be used in light function of spatial shader 2024-11-19 11:39:49 +03:00
Thaddeus Crews
90ce26a27b Merge pull request #94889 from rune-scape/no-const-list-erase
Remove const_cast in `List::erase`
2024-11-10 12:12:34 -06:00
rune-scape
a47daa0a44 Avoid const_cast in List::erase by requiring mutable elements 2024-11-08 00:10:08 -08:00
Thaddeus Crews
6cef0a17fb Merge pull request #98571 from timothyqiu/pname-no-editor
Don't mark `PROPERTY_USAGE_NO_EDITOR` properties for translation
2024-11-05 18:36:10 -06:00
Haoyu Qiu
d47425b35f Don't mark PROPERTY_USAGE_NO_EDITOR properties for translation
Using `PNAME()` on these properties are redundant as they won't be displayed
in the editor and some of them will be automatically ignored by the
extraction script.
2024-10-26 22:09:21 +08:00
Chaosus
43a99fba3d Add alpha channel display to vec4 previews of visual shader nodes 2024-10-18 20:00:10 +03:00
Rémi Verschelde
9dfc41568a Merge pull request #95984 from timothyqiu/what-identifier
Add `String.is_valid_unicode_identifier()`
2024-08-27 16:55:06 +02:00
Rémi Verschelde
21bcff00e9 Merge pull request #95126 from Chaosus/shader_cubemap_fix
Allow setting a cubemap as default parameter to shader
2024-08-27 16:54:50 +02:00
Chaosus
db251a3f99 Allow setting a cubemap as default parameter to shader 2024-08-27 09:43:05 +03:00
Chaosus
f538376c3b Add CLIP_SPACE_FAR built-in to spatial shader 2024-08-27 08:48:46 +03:00
Haoyu Qiu
8bf4ecc026 Add String.is_valid_unicode_identifier()
- Adds `is_valid_unicode_identifier()`
- Adds `is_valid_ascii_identifier()`
- Deprecates `is_valid_identifier()`
- Renames `validate_identifier()` to `validate_ascii_identifier()`
2024-08-27 11:34:08 +08:00
Rémi Verschelde
0125b0eb03 Merge pull request #94215 from Chaosus/vs_preview_and_param_list
Add a material preview to visual shader editor
2024-08-26 23:28:46 +02:00
Yuri Rubinsky
eef236db63 Fix visual shader inputs to follow the alphabet order 2024-08-20 20:51:47 +03:00
Yuri Rubinsky
f202a3d24e Add a material preview to visual shader editor 2024-08-17 08:27:54 +03:00
Rémi Verschelde
1346aaf4e7 Merge pull request #95465 from jsjtxietian/remove-category-warning
Remove `missing a category` warning in visual shader node
2024-08-16 14:34:56 +02:00
jsjtxietian
c7249f41e9 Remove missing a category warning in visual shader node 2024-08-13 12:20:59 +08:00
tetrapod00
b9876b626d Change "Node3D" to "Spatial" in VisualShader resource 2024-08-12 21:04:13 -07:00
Yuri Rubinsky
14c36b733c Fix internal connection count decreased if visual shader node removed 2024-07-18 11:40:02 +03:00
Yuri Rubinsky
92aa01f937 Add few new outputs to the visual shaders 2024-07-12 17:12:22 +03:00
Yuri Rubinsky
537316098f Fix bugs in visual shader varyings 2024-06-16 16:58:46 +03:00
Yuri Rubinsky
99fa6ee6c4 Fix incorrect preview port in visual shader 2024-06-14 12:31:34 +03:00
Rémi Verschelde
0d1f2396d5 Merge pull request #92847 from aaronp64/varying_getter_port_type
Fix `VisualShaderNodeVaryingGetter` expanded ports adding ".x" to shader
2024-06-11 16:59:25 +02:00
Rémi Verschelde
5fcd9803cd Merge pull request #90850 from AlexeyBond/patch-1
Handle Vector4 default input values in visual shaders
2024-06-07 23:29:19 +02:00
aaronp64
73343a2e7f Fix VisualShaderNodeVaryingGetter expanded ports adding ".x" to shader
When VisualShaderNodeVaryingGetter type was Vector2/Vector3/Vector4, expanding the output ports and connecting an individual value to a scalar input would add ".x" to the assignment in the generated shader.  This was due to `VisualShaderNodeVarying::get_port_type` ignoring the port number, and always returning the associated vector type.  Added checks for `p_port == 0` to return either the vector type, or scalar for expanded ports, matching similar logic in other nodes, like `VisualShaderNodeColorConstant::get_output_port_type`.

Fixes #92832
2024-06-06 15:21:21 -04:00
kobewi
413c11357d Use Core/Scene stringnames consistently 2024-05-13 23:41:07 +02:00
Hendrik Brucker
62776842df [VisualShader] Add reroute node and improve port drawing 2024-05-13 03:26:01 +02:00
A Thousand Ships
955d5affa8 Reduce and prevent unnecessary random-access to List
Random-access access to `List` when iterating is `O(n^2)` (`O(n)` when
accessing a single element)

* Removed subscript operator, in favor of a more explicit `get`
* Added conversion from `Iterator` to `ConstIterator`
* Remade existing operations into other solutions when applicable
2024-05-04 16:08:55 +02:00
Rémi Verschelde
de00cfbc01 Merge pull request #90892 from Chaosus/vs_fix_expression_port_expand
Prevent expanding output port in visual shader expression
2024-05-01 09:54:57 +02:00
Aaron Franke
b1f5e9fe3a Rename internal is_ascii_char to is_ascii_alphabet_char 2024-04-20 02:36:41 -07:00
Yuri Rubinsky
56d843724e Prevent expanding output port in visual shader expression 2024-04-19 11:49:10 +03:00
Alexey Bondarenko
69f2e066db fix: Handle Vector4 default input values in visual shaders 2024-04-18 18:26:03 +06:00
Hendrik Brucker
735c45dc8e [Compatibility] Add stub for VisualShaderNodeComment 2024-04-18 02:39:29 +02:00
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
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
jsjtxietian
ff089f8cea Check is the ref shader valid in visual shader's update_option_menu 2024-01-25 11:54:23 +08:00
Giwayume
bb83c4adec Add custom shader attributes to Canvas Item Shaders 2024-01-23 14:36:39 -05: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
Rémi Verschelde
5d306202b8 Merge pull request #84348 from jsjtxietian/screen-uv-in-visual-shader-preview-should-uv
Fix visual shader's `screen_uv` input preview uses position of node rather than a sample area like uv
2024-01-04 14:25:21 +01:00
Alistair Leslie-Hughes
bfd62d7cdf Visual shader refacter use of connection 2023-12-12 07:36:28 +11:00
Alistair Leslie-Hughes
a30dc67007 Fix VisualShader connection use after free. 2023-11-14 07:34:41 +11:00
jsjtxietian
d920bdeda5 Fix visual shader's screen_uv input preview uses position of node
rather than a sample area like uv
2023-11-06 11:20:42 +08:00