From cb544af5d22b8e757aa729dad36a204d536f2921 Mon Sep 17 00:00:00 2001 From: arkology <43543909+arkology@users.noreply.github.com> Date: Fri, 16 Oct 2020 20:50:15 +0300 Subject: [PATCH] Provide TEXTURE and UV by default, removed "Rectangle creation" and "RandomFloatInput" nodes Rectangle creation functionality can be easily reproduced with "RegularPolygonShape" node. --- addons/shaderV/examples/basic_examples.tscn | 584 ++++++------------ addons/shaderV/rgba/blur/blur9sample.gd | 10 +- addons/shaderV/rgba/blur/blurCustom.gd | 10 +- addons/shaderV/rgba/blur/zoomBlur.gd | 10 +- addons/shaderV/rgba/chromaticAberration.gd | 10 +- addons/shaderV/rgba/clamp.gd | 8 +- addons/shaderV/rgba/emboss.gd | 10 +- addons/shaderV/rgba/fireFX.gd | 7 +- .../generate_shapes/chekerboardPattern.gd | 7 +- .../rgba/generate_shapes/generateCircle.gd | 7 +- .../rgba/generate_shapes/generateCircle2.gd | 7 +- .../rgba/generate_shapes/generateRect.gd | 87 --- .../generate_shapes/generateRegularNgon.gd | 7 +- .../rgba/generate_shapes/generateSpiral.gd | 7 +- .../shaderV/rgba/generate_shapes/gridShape.gd | 7 +- .../rgba/generate_shapes/scanLinesSharp.gd | 7 +- .../rgba/generate_shapes/stripesRandom.gd | 7 +- addons/shaderV/rgba/glow/glowEmpty.gd | 10 +- addons/shaderV/rgba/glow/innerGlow.gd | 10 +- addons/shaderV/rgba/glow/innerGlowEmpty.gd | 10 +- addons/shaderV/rgba/glow/outerGlow.gd | 10 +- addons/shaderV/rgba/glow/outerGlowEmpty.gd | 10 +- addons/shaderV/rgba/gradient4corners.gd | 7 +- .../rgba/noise/fractal/generic2d_fractal.gd | 7 +- .../rgba/noise/fractal/perlin2d_fractal.gd | 7 +- .../rgba/noise/fractal/perlin3d_fractal.gd | 7 +- .../rgba/noise/fractal/perlin4d_fractal.gd | 7 +- .../rgba/noise/fractal/simplex2d_fractal.gd | 7 +- .../rgba/noise/fractal/simplex3d_fractal.gd | 7 +- .../rgba/noise/fractal/simplex4d_fractal.gd | 7 +- .../rgba/noise/fractal/worley2d_fractal.gd | 7 +- .../rgba/noise/fractal/worley3d_fractal.gd | 7 +- addons/shaderV/rgba/noise/generic2d.gd | 7 +- addons/shaderV/rgba/noise/perlin2d.gd | 7 +- addons/shaderV/rgba/noise/perlin3d.gd | 7 +- addons/shaderV/rgba/noise/perlin4d.gd | 7 +- addons/shaderV/rgba/noise/perlinPeriodic3d.gd | 7 +- addons/shaderV/rgba/noise/simplex2d.gd | 7 +- addons/shaderV/rgba/noise/simplex3d.gd | 7 +- addons/shaderV/rgba/noise/simplex4d.gd | 7 +- addons/shaderV/rgba/noise/worley2d.gd | 7 +- addons/shaderV/rgba/noise/worley2x2.gd | 7 +- addons/shaderV/rgba/noise/worley2x2x2.gd | 7 +- addons/shaderV/rgba/noise/worley3d.gd | 7 +- addons/shaderV/rgba/normalFromHeightmap.gd | 10 +- addons/shaderV/rgba/shineFX.gd | 7 +- addons/shaderV/rgba/sobelEdge.gd | 10 +- addons/shaderV/tools/random/randomFloat.gd | 22 +- ...andomFloat_I.gd => randomFloatImproved.gd} | 11 +- .../shaderV/tools/random/randomFloatInput.gd | 42 -- addons/shaderV/tools/remap.gd | 9 +- .../transformCoordinates/cartesianToPolar.gd | 9 +- .../cartesianToSpherical.gd | 9 +- .../uv/animated/distortionUVAnimated.gd | 7 +- addons/shaderV/uv/animated/doodleUV.gd | 7 +- addons/shaderV/uv/animated/rotateAnimated.gd | 7 +- addons/shaderV/uv/animated/swirlUV.gd | 7 +- .../uv/animated/tilingNoffsetAnimated.gd | 7 +- addons/shaderV/uv/distortionUV.gd | 7 +- addons/shaderV/uv/flipUV.gd | 7 +- addons/shaderV/uv/lensDistortion.gd | 7 +- addons/shaderV/uv/pixelate.gd | 7 +- addons/shaderV/uv/rotate.gd | 7 +- addons/shaderV/uv/scaleUV.gd | 7 +- addons/shaderV/uv/sphericalUV.gd | 7 +- addons/shaderV/uv/tileUV.gd | 7 +- addons/shaderV/uv/tilingNoffset.gd | 7 +- addons/shaderV/uv/transformUV.gd | 7 +- addons/shaderV/uv/twirl.gd | 7 +- 69 files changed, 636 insertions(+), 601 deletions(-) delete mode 100644 addons/shaderV/rgba/generate_shapes/generateRect.gd rename addons/shaderV/tools/random/{randomFloat_I.gd => randomFloatImproved.gd} (89%) delete mode 100644 addons/shaderV/tools/random/randomFloatInput.gd diff --git a/addons/shaderV/examples/basic_examples.tscn b/addons/shaderV/examples/basic_examples.tscn index befa7bf..48a0b0c 100644 --- a/addons/shaderV/examples/basic_examples.tscn +++ b/addons/shaderV/examples/basic_examples.tscn @@ -1,4 +1,4 @@ -[gd_scene load_steps=703 format=2] +[gd_scene load_steps=692 format=2] [ext_resource path="res://addons/shaderV/shaderV_icon.png" type="Texture" id=1] [ext_resource path="res://addons/shaderV/uv/tilingNoffset.gd" type="Script" id=2] @@ -22,7 +22,6 @@ [ext_resource path="res://addons/shaderV/tools/random/hash2d.gd" type="Script" id=20] [ext_resource path="res://addons/shaderV/tools/random/hash2dvector.gd" type="Script" id=21] [ext_resource path="res://addons/shaderV/tools/random/randomFloat.gd" type="Script" id=22] -[ext_resource path="res://addons/shaderV/tools/random/randomFloatInput.gd" type="Script" id=23] [ext_resource path="res://addons/shaderV/tools/random/randomGoldNoiseFloat.gd" type="Script" id=24] [ext_resource path="res://addons/shaderV/tools/vec2Compose.gd" type="Script" id=25] [ext_resource path="res://addons/shaderV/tools/remap.gd" type="Script" id=26] @@ -37,7 +36,6 @@ [ext_resource path="res://addons/shaderV/rgba/generate_shapes/chekerboardPattern.gd" type="Script" id=35] [ext_resource path="res://addons/shaderV/rgba/generate_shapes/generateCircle2.gd" type="Script" id=36] [ext_resource path="res://addons/shaderV/rgba/generate_shapes/generateCircle.gd" type="Script" id=37] -[ext_resource path="res://addons/shaderV/rgba/generate_shapes/generateRect.gd" type="Script" id=38] [ext_resource path="res://addons/shaderV/rgba/generate_shapes/generateRegularNgon.gd" type="Script" id=39] [ext_resource path="res://addons/shaderV/rgba/generate_shapes/generateSpiral.gd" type="Script" id=40] [ext_resource path="res://addons/shaderV/rgba/generate_shapes/scanLinesSharp.gd" type="Script" id=41] @@ -1700,7 +1698,7 @@ void light() { } " -graph_offset = Vector2( -140, -83 ) +graph_offset = Vector2( -289, -91 ) mode = 1 flags/light_only = false nodes/fragment/0/position = Vector2( 480, 0 ) @@ -1713,7 +1711,7 @@ nodes/fragment/connections = PoolIntArray( 3, 0, 19, 0, 19, 0, 0, 0 ) [sub_resource type="ShaderMaterial" id=107] shader = SubResource( 106 ) -[sub_resource type="VisualShaderNodeCustom" id=108] +[sub_resource type="VisualShaderNodeCustom" id=609] script = ExtResource( 22 ) [sub_resource type="VisualShader" id=109] @@ -1727,14 +1725,14 @@ void vertex() { } void fragment() { -// RandomFloat:20 - float n_out20p0; +// RandomFloat:2 + float n_out2p0; { - n_out20p0 = fract(sin(dot(UV, vec2(12.9898, 78.233))) * 43758.5453123); + n_out2p0 = fract(sin(dot(UV.xy, vec2(12.9898, 78.233))) * 43758.5453123); } // Output:0 - COLOR.rgb = vec3(n_out20p0); + COLOR.rgb = vec3(n_out2p0); } @@ -1743,13 +1741,13 @@ void light() { } " -graph_offset = Vector2( -140, -83 ) +graph_offset = Vector2( -289, -91 ) mode = 1 flags/light_only = false nodes/fragment/0/position = Vector2( 400, 0 ) -nodes/fragment/20/node = SubResource( 108 ) -nodes/fragment/20/position = Vector2( 200, 0 ) -nodes/fragment/connections = PoolIntArray( 20, 0, 0, 0 ) +nodes/fragment/2/node = SubResource( 609 ) +nodes/fragment/2/position = Vector2( 200, 0 ) +nodes/fragment/connections = PoolIntArray( 2, 0, 0, 0 ) [sub_resource type="ShaderMaterial" id=110] shader = SubResource( 109 ) @@ -1757,53 +1755,6 @@ shader = SubResource( 109 ) [sub_resource type="VisualShaderNodeInput" id=111] input_name = "uv" -[sub_resource type="VisualShaderNodeCustom" id=112] -default_input_values = [ 0, Vector3( 0, 0, 0 ) ] -script = ExtResource( 23 ) - -[sub_resource type="VisualShader" id=113] -code = "shader_type canvas_item; - - - -void vertex() { -// Output:0 - -} - -void fragment() { -// Input:21 - vec3 n_out21p0 = vec3(UV, 0.0); - -// RandomFloatInput:22 - float n_out22p0; - { - n_out22p0 = fract(sin(dot(n_out21p0.xy, vec2(12.9898, 78.233))) * 43758.5453123); - } - -// Output:0 - COLOR.rgb = vec3(n_out22p0); - -} - -void light() { -// Output:0 - -} -" -graph_offset = Vector2( -444, -115 ) -mode = 1 -flags/light_only = false -nodes/fragment/0/position = Vector2( 400, 0 ) -nodes/fragment/21/node = SubResource( 111 ) -nodes/fragment/21/position = Vector2( 0, 0 ) -nodes/fragment/22/node = SubResource( 112 ) -nodes/fragment/22/position = Vector2( 180, 0 ) -nodes/fragment/connections = PoolIntArray( 21, 0, 22, 0, 22, 0, 0, 0 ) - -[sub_resource type="ShaderMaterial" id=114] -shader = SubResource( 113 ) - [sub_resource type="VisualShaderNodeVec3Constant" id=115] [sub_resource type="VisualShaderNodeScalarConstant" id=116] @@ -3351,91 +3302,6 @@ nodes/fragment/connections = PoolIntArray( 4, 0, 18, 0, 19, 0, 18, 3, 20, 0, 18, [sub_resource type="ShaderMaterial" id=218] shader = SubResource( 217 ) -[sub_resource type="VisualShaderNodeVec3Constant" id=219] -constant = Vector3( 0.5, 0.5, 0 ) - -[sub_resource type="VisualShaderNodeCustom" id=220] -default_input_values = [ 1, Vector3( 0.5, 0.5, 0 ), 2, Vector3( 0.5, 0.5, 0 ), 3, Vector3( 1, 1, 1 ), 4, 1.0 ] -script = ExtResource( 38 ) - -[sub_resource type="VisualShaderNodeVec3Constant" id=221] -constant = Vector3( 0.5, 0.8, 0 ) - -[sub_resource type="VisualShaderNodeColorConstant" id=222] -constant = Color( 0.0078125, 1, 0, 1 ) - -[sub_resource type="VisualShader" id=223] -code = "shader_type canvas_item; - - -// RectShape - -float rectCreati0nFunc(vec2 _uv_rect_generate, vec2 _pos_rect_generate, vec2 _size_rect_generate){ - vec2 sw_rect_gen = _pos_rect_generate - _size_rect_generate / 2.0; - vec2 ne_rect_gen = _pos_rect_generate + _size_rect_generate / 2.0; - vec2 _pct_temp_var = step(sw_rect_gen, _uv_rect_generate); - _pct_temp_var -= step(ne_rect_gen, _uv_rect_generate); - return _pct_temp_var.x * _pct_temp_var.y; -} - - -void vertex() { -// Output:0 - -} - -void fragment() { -// Input:4 - vec3 n_out4p0 = vec3(UV, 0.0); - -// Vector:13 - vec3 n_out13p0 = vec3(0.500000, 0.500000, 0.000000); - -// Vector:24 - vec3 n_out24p0 = vec3(0.500000, 0.800000, 0.000000); - -// Color:25 - vec3 n_out25p0 = vec3(0.007813, 1.000000, 0.000000); - float n_out25p1 = 1.000000; - -// RectShape:23 - vec3 n_out23p0; - float n_out23p1; - { - n_out23p0 = n_out25p0; - n_out23p1 = rectCreati0nFunc(n_out4p0.xy, n_out13p0.xy, n_out24p0.xy) * n_out25p1; - } - -// Output:0 - COLOR.rgb = n_out23p0; - COLOR.a = n_out23p1; - -} - -void light() { -// Output:0 - -} -" -graph_offset = Vector2( -423.592, 134.01 ) -mode = 1 -flags/light_only = false -nodes/fragment/0/position = Vector2( 480, 160 ) -nodes/fragment/4/node = SubResource( 175 ) -nodes/fragment/4/position = Vector2( 60, 0 ) -nodes/fragment/13/node = SubResource( 219 ) -nodes/fragment/13/position = Vector2( -120, 80 ) -nodes/fragment/23/node = SubResource( 220 ) -nodes/fragment/23/position = Vector2( 280, 160 ) -nodes/fragment/24/node = SubResource( 221 ) -nodes/fragment/24/position = Vector2( -120, 180 ) -nodes/fragment/25/node = SubResource( 222 ) -nodes/fragment/25/position = Vector2( -100, 280 ) -nodes/fragment/connections = PoolIntArray( 23, 0, 0, 0, 23, 1, 0, 1, 4, 0, 23, 0, 13, 0, 23, 1, 24, 0, 23, 2, 25, 0, 23, 3, 25, 1, 23, 4 ) - -[sub_resource type="ShaderMaterial" id=224] -shader = SubResource( 223 ) - [sub_resource type="VisualShaderNodeColorConstant" id=225] constant = Color( 1, 0.867188, 0, 1 ) @@ -3521,7 +3387,7 @@ void light() { } " -graph_offset = Vector2( -423.592, 134.01 ) +graph_offset = Vector2( -246, 175 ) mode = 1 flags/light_only = false nodes/fragment/0/position = Vector2( 540, 160 ) @@ -5993,7 +5859,7 @@ void light() { } " -graph_offset = Vector2( -203.592, -454.99 ) +graph_offset = Vector2( -495, -123 ) mode = 1 flags/light_only = false nodes/fragment/0/position = Vector2( 700, -80 ) @@ -10039,7 +9905,7 @@ __meta__ = { [node name="item7" type="VBoxContainer" parent="container"] margin_left = 654.0 -margin_right = 774.0 +margin_right = 801.0 margin_bottom = 95.0 rect_min_size = Vector2( 120, 95 ) custom_constants/separation = -2 @@ -10050,7 +9916,7 @@ __meta__ = { [node name="title" type="Label" parent="container/item7"] margin_top = 11.0 -margin_right = 120.0 +margin_right = 147.0 margin_bottom = 25.0 rect_min_size = Vector2( 70, 0 ) text = "Spherical UV" @@ -10062,7 +9928,7 @@ __meta__ = { [node name="preview" type="TextureRect" parent="container/item7"] material = SubResource( 41 ) margin_top = 23.0 -margin_right = 120.0 +margin_right = 147.0 margin_bottom = 83.0 rect_min_size = Vector2( 70, 60 ) size_flags_horizontal = 5 @@ -10075,8 +9941,8 @@ __meta__ = { } [node name="item8" type="VBoxContainer" parent="container"] -margin_left = 763.0 -margin_right = 883.0 +margin_left = 790.0 +margin_right = 910.0 margin_bottom = 95.0 rect_min_size = Vector2( 120, 95 ) custom_constants/separation = -2 @@ -10112,7 +9978,7 @@ __meta__ = { } [node name="item9" type="VBoxContainer" parent="container"] -margin_left = 872.0 +margin_left = 899.0 margin_right = 1019.0 margin_bottom = 95.0 rect_min_size = Vector2( 120, 95 ) @@ -10124,7 +9990,7 @@ __meta__ = { [node name="title" type="Label" parent="container/item9"] margin_top = 11.0 -margin_right = 147.0 +margin_right = 120.0 margin_bottom = 25.0 rect_min_size = Vector2( 70, 0 ) text = "Tiling & Offset UV" @@ -10136,7 +10002,7 @@ __meta__ = { [node name="preview" type="TextureRect" parent="container/item9"] material = SubResource( 51 ) margin_top = 23.0 -margin_right = 147.0 +margin_right = 120.0 margin_bottom = 83.0 rect_min_size = Vector2( 70, 60 ) size_flags_horizontal = 5 @@ -10456,7 +10322,7 @@ __meta__ = { [node name="item18" type="VBoxContainer" parent="container"] margin_left = 654.0 margin_top = 97.0 -margin_right = 774.0 +margin_right = 801.0 margin_bottom = 192.0 rect_min_size = Vector2( 120, 95 ) custom_constants/separation = -2 @@ -10467,7 +10333,7 @@ __meta__ = { [node name="title" type="Label" parent="container/item18"] margin_top = 3.0 -margin_right = 120.0 +margin_right = 147.0 margin_bottom = 34.0 rect_min_size = Vector2( 70, 0 ) text = "Hash 2D @@ -10480,7 +10346,7 @@ __meta__ = { [node name="preview" type="TextureRect" parent="container/item18"] material = SubResource( 104 ) margin_top = 32.0 -margin_right = 120.0 +margin_right = 147.0 margin_bottom = 92.0 rect_min_size = Vector2( 70, 60 ) size_flags_horizontal = 5 @@ -10493,9 +10359,9 @@ __meta__ = { } [node name="item19" type="VBoxContainer" parent="container"] -margin_left = 763.0 +margin_left = 790.0 margin_top = 97.0 -margin_right = 883.0 +margin_right = 910.0 margin_bottom = 192.0 rect_min_size = Vector2( 120, 95 ) custom_constants/separation = -2 @@ -10532,7 +10398,7 @@ __meta__ = { } [node name="item20" type="VBoxContainer" parent="container"] -margin_left = 872.0 +margin_left = 899.0 margin_top = 97.0 margin_right = 1019.0 margin_bottom = 192.0 @@ -10545,7 +10411,7 @@ __meta__ = { [node name="title" type="Label" parent="container/item20"] margin_top = 11.0 -margin_right = 147.0 +margin_right = 120.0 margin_bottom = 25.0 rect_min_size = Vector2( 70, 0 ) text = "Random Float" @@ -10557,7 +10423,7 @@ __meta__ = { [node name="preview" type="TextureRect" parent="container/item20"] material = SubResource( 110 ) margin_top = 23.0 -margin_right = 147.0 +margin_right = 120.0 margin_bottom = 83.0 rect_min_size = Vector2( 70, 60 ) size_flags_horizontal = 5 @@ -10569,7 +10435,7 @@ __meta__ = { "_editor_description_": "" } -[node name="item21" type="VBoxContainer" parent="container"] +[node name="item22" type="VBoxContainer" parent="container"] margin_left = 1008.0 margin_top = 97.0 margin_right = 1128.0 @@ -10578,45 +10444,6 @@ rect_min_size = Vector2( 120, 95 ) custom_constants/separation = -2 alignment = 1 __meta__ = { -"_editor_description_": "" -} - -[node name="title" type="Label" parent="container/item21"] -margin_top = 3.0 -margin_right = 120.0 -margin_bottom = 34.0 -rect_min_size = Vector2( 70, 0 ) -text = "Random Float -(with input port)" -align = 1 -__meta__ = { -"_editor_description_": "" -} - -[node name="preview" type="TextureRect" parent="container/item21"] -material = SubResource( 114 ) -margin_top = 32.0 -margin_right = 120.0 -margin_bottom = 92.0 -rect_min_size = Vector2( 70, 60 ) -size_flags_horizontal = 5 -texture = ExtResource( 1 ) -expand = true -stretch_mode = 6 -__meta__ = { -"_edit_use_anchors_": false, -"_editor_description_": "" -} - -[node name="item22" type="VBoxContainer" parent="container"] -margin_left = 1117.0 -margin_top = 97.0 -margin_right = 1237.0 -margin_bottom = 192.0 -rect_min_size = Vector2( 120, 95 ) -custom_constants/separation = -2 -alignment = 1 -__meta__ = { "_edit_use_anchors_": false, "_editor_description_": "" } @@ -10649,9 +10476,10 @@ __meta__ = { } [node name="item23" type="VBoxContainer" parent="container"] -margin_top = 194.0 -margin_right = 120.0 -margin_bottom = 289.0 +margin_left = 1117.0 +margin_top = 97.0 +margin_right = 1237.0 +margin_bottom = 192.0 rect_min_size = Vector2( 120, 95 ) custom_constants/separation = -2 alignment = 1 @@ -10687,9 +10515,8 @@ __meta__ = { } [node name="item24" type="VBoxContainer" parent="container"] -margin_left = 109.0 margin_top = 194.0 -margin_right = 229.0 +margin_right = 120.0 margin_bottom = 289.0 rect_min_size = Vector2( 120, 95 ) custom_constants/separation = -2 @@ -10726,9 +10553,9 @@ __meta__ = { } [node name="item25" type="VBoxContainer" parent="container"] -margin_left = 218.0 +margin_left = 109.0 margin_top = 194.0 -margin_right = 338.0 +margin_right = 229.0 margin_bottom = 289.0 rect_min_size = Vector2( 120, 95 ) custom_constants/separation = -2 @@ -10765,9 +10592,9 @@ __meta__ = { } [node name="item26" type="VBoxContainer" parent="container"] -margin_left = 327.0 +margin_left = 218.0 margin_top = 194.0 -margin_right = 447.0 +margin_right = 338.0 margin_bottom = 289.0 rect_min_size = Vector2( 120, 95 ) custom_constants/separation = -2 @@ -10804,9 +10631,9 @@ __meta__ = { } [node name="item27" type="VBoxContainer" parent="container"] -margin_left = 436.0 +margin_left = 327.0 margin_top = 194.0 -margin_right = 556.0 +margin_right = 447.0 margin_bottom = 289.0 rect_min_size = Vector2( 120, 95 ) custom_constants/separation = -2 @@ -10843,9 +10670,9 @@ __meta__ = { } [node name="item28" type="VBoxContainer" parent="container"] -margin_left = 545.0 +margin_left = 436.0 margin_top = 194.0 -margin_right = 665.0 +margin_right = 556.0 margin_bottom = 289.0 rect_min_size = Vector2( 120, 95 ) custom_constants/separation = -2 @@ -10882,9 +10709,9 @@ __meta__ = { } [node name="item29" type="VBoxContainer" parent="container"] -margin_left = 654.0 +margin_left = 545.0 margin_top = 194.0 -margin_right = 774.0 +margin_right = 665.0 margin_bottom = 289.0 rect_min_size = Vector2( 120, 95 ) custom_constants/separation = -2 @@ -10921,9 +10748,9 @@ __meta__ = { } [node name="item30" type="VBoxContainer" parent="container"] -margin_left = 763.0 +margin_left = 654.0 margin_top = 194.0 -margin_right = 883.0 +margin_right = 801.0 margin_bottom = 289.0 rect_min_size = Vector2( 120, 95 ) custom_constants/separation = -2 @@ -10935,7 +10762,7 @@ __meta__ = { [node name="title" type="Label" parent="container/item30"] margin_top = 11.0 -margin_right = 120.0 +margin_right = 147.0 margin_bottom = 25.0 rect_min_size = Vector2( 70, 0 ) text = "Inner Glow" @@ -10947,7 +10774,7 @@ __meta__ = { [node name="preview" type="TextureRect" parent="container/item30"] material = SubResource( 172 ) margin_top = 23.0 -margin_right = 120.0 +margin_right = 147.0 margin_bottom = 83.0 rect_min_size = Vector2( 70, 60 ) size_flags_horizontal = 5 @@ -10960,9 +10787,9 @@ __meta__ = { } [node name="item31" type="VBoxContainer" parent="container"] -margin_left = 872.0 +margin_left = 790.0 margin_top = 194.0 -margin_right = 1019.0 +margin_right = 910.0 margin_bottom = 289.0 rect_min_size = Vector2( 120, 95 ) custom_constants/separation = -2 @@ -10974,7 +10801,7 @@ __meta__ = { [node name="title" type="Label" parent="container/item31"] margin_top = 3.0 -margin_right = 147.0 +margin_right = 120.0 margin_bottom = 34.0 rect_min_size = Vector2( 70, 0 ) text = "Inner Glow @@ -10987,7 +10814,7 @@ __meta__ = { [node name="preview" type="TextureRect" parent="container/item31"] material = SubResource( 181 ) margin_top = 32.0 -margin_right = 147.0 +margin_right = 120.0 margin_bottom = 92.0 rect_min_size = Vector2( 70, 60 ) size_flags_horizontal = 5 @@ -11000,9 +10827,9 @@ __meta__ = { } [node name="item32" type="VBoxContainer" parent="container"] -margin_left = 1008.0 +margin_left = 899.0 margin_top = 194.0 -margin_right = 1128.0 +margin_right = 1019.0 margin_bottom = 289.0 rect_min_size = Vector2( 120, 95 ) custom_constants/separation = -2 @@ -11039,9 +10866,9 @@ __meta__ = { } [node name="item33" type="VBoxContainer" parent="container"] -margin_left = 1117.0 +margin_left = 1008.0 margin_top = 194.0 -margin_right = 1237.0 +margin_right = 1128.0 margin_bottom = 289.0 rect_min_size = Vector2( 120, 95 ) custom_constants/separation = -2 @@ -11079,9 +10906,10 @@ __meta__ = { } [node name="item34" type="VBoxContainer" parent="container"] -margin_top = 291.0 -margin_right = 120.0 -margin_bottom = 386.0 +margin_left = 1117.0 +margin_top = 194.0 +margin_right = 1237.0 +margin_bottom = 289.0 rect_min_size = Vector2( 120, 95 ) custom_constants/separation = -2 alignment = 1 @@ -11118,9 +10946,8 @@ __meta__ = { } [node name="item35" type="VBoxContainer" parent="container"] -margin_left = 109.0 margin_top = 291.0 -margin_right = 229.0 +margin_right = 120.0 margin_bottom = 386.0 rect_min_size = Vector2( 120, 95 ) custom_constants/separation = -2 @@ -11157,9 +10984,9 @@ __meta__ = { } [node name="item36" type="VBoxContainer" parent="container"] -margin_left = 218.0 +margin_left = 109.0 margin_top = 291.0 -margin_right = 338.0 +margin_right = 229.0 margin_bottom = 386.0 rect_min_size = Vector2( 120, 95 ) custom_constants/separation = -2 @@ -11195,49 +11022,10 @@ __meta__ = { "_editor_description_": "" } -[node name="item37" type="VBoxContainer" parent="container"] -margin_left = 327.0 -margin_top = 291.0 -margin_right = 447.0 -margin_bottom = 386.0 -rect_min_size = Vector2( 120, 95 ) -custom_constants/separation = -2 -alignment = 1 -__meta__ = { -"_edit_use_anchors_": false, -"_editor_description_": "" -} - -[node name="title" type="Label" parent="container/item37"] -margin_top = 11.0 -margin_right = 120.0 -margin_bottom = 25.0 -rect_min_size = Vector2( 70, 0 ) -text = "Rect Shape" -align = 1 -__meta__ = { -"_editor_description_": "" -} - -[node name="preview" type="TextureRect" parent="container/item37"] -material = SubResource( 224 ) -margin_top = 23.0 -margin_right = 120.0 -margin_bottom = 83.0 -rect_min_size = Vector2( 70, 60 ) -size_flags_horizontal = 5 -texture = ExtResource( 1 ) -expand = true -stretch_mode = 6 -__meta__ = { -"_edit_use_anchors_": false, -"_editor_description_": "" -} - [node name="item38" type="VBoxContainer" parent="container"] -margin_left = 436.0 +margin_left = 218.0 margin_top = 291.0 -margin_right = 556.0 +margin_right = 338.0 margin_bottom = 386.0 rect_min_size = Vector2( 120, 95 ) custom_constants/separation = -2 @@ -11275,9 +11063,9 @@ __meta__ = { } [node name="item39" type="VBoxContainer" parent="container"] -margin_left = 545.0 +margin_left = 327.0 margin_top = 291.0 -margin_right = 665.0 +margin_right = 447.0 margin_bottom = 386.0 rect_min_size = Vector2( 120, 95 ) custom_constants/separation = -2 @@ -11314,9 +11102,9 @@ __meta__ = { } [node name="item40" type="VBoxContainer" parent="container"] -margin_left = 654.0 +margin_left = 436.0 margin_top = 291.0 -margin_right = 774.0 +margin_right = 556.0 margin_bottom = 386.0 rect_min_size = Vector2( 120, 95 ) custom_constants/separation = -2 @@ -11354,9 +11142,9 @@ __meta__ = { } [node name="item41" type="VBoxContainer" parent="container"] -margin_left = 763.0 +margin_left = 545.0 margin_top = 291.0 -margin_right = 883.0 +margin_right = 665.0 margin_bottom = 386.0 rect_min_size = Vector2( 120, 95 ) custom_constants/separation = -2 @@ -11394,9 +11182,9 @@ __meta__ = { } [node name="item42" type="VBoxContainer" parent="container"] -margin_left = 872.0 +margin_left = 654.0 margin_top = 291.0 -margin_right = 1019.0 +margin_right = 801.0 margin_bottom = 386.0 rect_min_size = Vector2( 120, 95 ) custom_constants/separation = -2 @@ -11434,9 +11222,9 @@ __meta__ = { } [node name="item43" type="VBoxContainer" parent="container"] -margin_left = 1008.0 +margin_left = 790.0 margin_top = 291.0 -margin_right = 1128.0 +margin_right = 910.0 margin_bottom = 386.0 rect_min_size = Vector2( 120, 95 ) custom_constants/separation = -2 @@ -11474,9 +11262,9 @@ __meta__ = { } [node name="item44" type="VBoxContainer" parent="container"] -margin_left = 1117.0 +margin_left = 899.0 margin_top = 291.0 -margin_right = 1237.0 +margin_right = 1019.0 margin_bottom = 386.0 rect_min_size = Vector2( 120, 95 ) custom_constants/separation = -2 @@ -11514,9 +11302,10 @@ __meta__ = { } [node name="item45" type="VBoxContainer" parent="container"] -margin_top = 388.0 -margin_right = 120.0 -margin_bottom = 483.0 +margin_left = 1008.0 +margin_top = 291.0 +margin_right = 1128.0 +margin_bottom = 386.0 rect_min_size = Vector2( 120, 95 ) custom_constants/separation = -2 alignment = 1 @@ -11553,10 +11342,10 @@ __meta__ = { } [node name="item46" type="VBoxContainer" parent="container"] -margin_left = 109.0 -margin_top = 388.0 -margin_right = 229.0 -margin_bottom = 483.0 +margin_left = 1117.0 +margin_top = 291.0 +margin_right = 1237.0 +margin_bottom = 386.0 rect_min_size = Vector2( 120, 95 ) custom_constants/separation = -2 alignment = 1 @@ -11593,9 +11382,8 @@ __meta__ = { } [node name="item47" type="VBoxContainer" parent="container"] -margin_left = 218.0 margin_top = 388.0 -margin_right = 338.0 +margin_right = 120.0 margin_bottom = 483.0 rect_min_size = Vector2( 120, 95 ) custom_constants/separation = -2 @@ -11633,9 +11421,9 @@ __meta__ = { } [node name="item48" type="VBoxContainer" parent="container"] -margin_left = 327.0 +margin_left = 109.0 margin_top = 388.0 -margin_right = 447.0 +margin_right = 229.0 margin_bottom = 483.0 rect_min_size = Vector2( 120, 95 ) custom_constants/separation = -2 @@ -11673,9 +11461,9 @@ __meta__ = { } [node name="item49" type="VBoxContainer" parent="container"] -margin_left = 436.0 +margin_left = 218.0 margin_top = 388.0 -margin_right = 556.0 +margin_right = 338.0 margin_bottom = 483.0 rect_min_size = Vector2( 120, 95 ) custom_constants/separation = -2 @@ -11713,9 +11501,9 @@ __meta__ = { } [node name="item50" type="VBoxContainer" parent="container"] -margin_left = 545.0 +margin_left = 327.0 margin_top = 388.0 -margin_right = 665.0 +margin_right = 447.0 margin_bottom = 483.0 rect_min_size = Vector2( 120, 95 ) custom_constants/separation = -2 @@ -11753,9 +11541,9 @@ __meta__ = { } [node name="item51" type="VBoxContainer" parent="container"] -margin_left = 654.0 +margin_left = 436.0 margin_top = 388.0 -margin_right = 774.0 +margin_right = 556.0 margin_bottom = 483.0 rect_min_size = Vector2( 120, 95 ) custom_constants/separation = -2 @@ -11793,9 +11581,9 @@ __meta__ = { } [node name="item52" type="VBoxContainer" parent="container"] -margin_left = 763.0 +margin_left = 545.0 margin_top = 388.0 -margin_right = 883.0 +margin_right = 665.0 margin_bottom = 483.0 rect_min_size = Vector2( 120, 95 ) custom_constants/separation = -2 @@ -11833,9 +11621,9 @@ __meta__ = { } [node name="item53" type="VBoxContainer" parent="container"] -margin_left = 872.0 +margin_left = 654.0 margin_top = 388.0 -margin_right = 1019.0 +margin_right = 801.0 margin_bottom = 483.0 rect_min_size = Vector2( 120, 95 ) custom_constants/separation = -2 @@ -11873,9 +11661,9 @@ __meta__ = { } [node name="item54" type="VBoxContainer" parent="container"] -margin_left = 1008.0 +margin_left = 790.0 margin_top = 388.0 -margin_right = 1128.0 +margin_right = 910.0 margin_bottom = 483.0 rect_min_size = Vector2( 120, 95 ) custom_constants/separation = -2 @@ -11912,9 +11700,9 @@ __meta__ = { } [node name="item55" type="VBoxContainer" parent="container"] -margin_left = 1117.0 +margin_left = 899.0 margin_top = 388.0 -margin_right = 1237.0 +margin_right = 1019.0 margin_bottom = 483.0 rect_min_size = Vector2( 120, 95 ) custom_constants/separation = -2 @@ -11951,9 +11739,10 @@ __meta__ = { } [node name="item56" type="VBoxContainer" parent="container"] -margin_top = 485.0 -margin_right = 120.0 -margin_bottom = 580.0 +margin_left = 1008.0 +margin_top = 388.0 +margin_right = 1128.0 +margin_bottom = 483.0 rect_min_size = Vector2( 120, 95 ) custom_constants/separation = -2 alignment = 1 @@ -11989,10 +11778,10 @@ __meta__ = { } [node name="item57" type="VBoxContainer" parent="container"] -margin_left = 109.0 -margin_top = 485.0 -margin_right = 229.0 -margin_bottom = 580.0 +margin_left = 1117.0 +margin_top = 388.0 +margin_right = 1237.0 +margin_bottom = 483.0 rect_min_size = Vector2( 120, 95 ) custom_constants/separation = -2 alignment = 1 @@ -12028,9 +11817,8 @@ __meta__ = { } [node name="item58" type="VBoxContainer" parent="container"] -margin_left = 218.0 margin_top = 485.0 -margin_right = 338.0 +margin_right = 120.0 margin_bottom = 580.0 rect_min_size = Vector2( 120, 95 ) custom_constants/separation = -2 @@ -12068,9 +11856,9 @@ __meta__ = { } [node name="item59" type="VBoxContainer" parent="container"] -margin_left = 327.0 +margin_left = 109.0 margin_top = 485.0 -margin_right = 447.0 +margin_right = 229.0 margin_bottom = 580.0 rect_min_size = Vector2( 120, 95 ) custom_constants/separation = -2 @@ -12108,9 +11896,9 @@ __meta__ = { } [node name="item60" type="VBoxContainer" parent="container"] -margin_left = 436.0 +margin_left = 218.0 margin_top = 485.0 -margin_right = 556.0 +margin_right = 338.0 margin_bottom = 580.0 rect_min_size = Vector2( 120, 95 ) custom_constants/separation = -2 @@ -12148,9 +11936,9 @@ __meta__ = { } [node name="item61" type="VBoxContainer" parent="container"] -margin_left = 545.0 +margin_left = 327.0 margin_top = 485.0 -margin_right = 665.0 +margin_right = 447.0 margin_bottom = 580.0 rect_min_size = Vector2( 120, 95 ) custom_constants/separation = -2 @@ -12187,9 +11975,9 @@ __meta__ = { } [node name="item62" type="VBoxContainer" parent="container"] -margin_left = 654.0 +margin_left = 436.0 margin_top = 485.0 -margin_right = 774.0 +margin_right = 556.0 margin_bottom = 580.0 rect_min_size = Vector2( 120, 95 ) custom_constants/separation = -2 @@ -12226,9 +12014,9 @@ __meta__ = { } [node name="item63" type="VBoxContainer" parent="container"] -margin_left = 763.0 +margin_left = 545.0 margin_top = 485.0 -margin_right = 883.0 +margin_right = 665.0 margin_bottom = 580.0 rect_min_size = Vector2( 120, 95 ) custom_constants/separation = -2 @@ -12266,9 +12054,9 @@ __meta__ = { } [node name="item64" type="VBoxContainer" parent="container"] -margin_left = 872.0 +margin_left = 654.0 margin_top = 485.0 -margin_right = 1019.0 +margin_right = 801.0 margin_bottom = 580.0 rect_min_size = Vector2( 120, 95 ) custom_constants/separation = -2 @@ -12306,9 +12094,9 @@ __meta__ = { } [node name="item65" type="VBoxContainer" parent="container"] -margin_left = 1008.0 +margin_left = 790.0 margin_top = 485.0 -margin_right = 1128.0 +margin_right = 910.0 margin_bottom = 580.0 rect_min_size = Vector2( 120, 95 ) custom_constants/separation = -2 @@ -12345,9 +12133,9 @@ __meta__ = { } [node name="item66" type="VBoxContainer" parent="container"] -margin_left = 1117.0 +margin_left = 899.0 margin_top = 485.0 -margin_right = 1237.0 +margin_right = 1019.0 margin_bottom = 580.0 rect_min_size = Vector2( 120, 95 ) custom_constants/separation = -2 @@ -12384,9 +12172,10 @@ __meta__ = { } [node name="item67" type="VBoxContainer" parent="container"] -margin_top = 582.0 -margin_right = 120.0 -margin_bottom = 677.0 +margin_left = 1008.0 +margin_top = 485.0 +margin_right = 1128.0 +margin_bottom = 580.0 rect_min_size = Vector2( 120, 95 ) custom_constants/separation = -2 alignment = 1 @@ -12422,10 +12211,10 @@ __meta__ = { } [node name="item68" type="VBoxContainer" parent="container"] -margin_left = 109.0 -margin_top = 582.0 -margin_right = 229.0 -margin_bottom = 677.0 +margin_left = 1117.0 +margin_top = 485.0 +margin_right = 1237.0 +margin_bottom = 580.0 rect_min_size = Vector2( 120, 95 ) custom_constants/separation = -2 alignment = 1 @@ -12461,9 +12250,8 @@ __meta__ = { } [node name="item69" type="VBoxContainer" parent="container"] -margin_left = 218.0 margin_top = 582.0 -margin_right = 338.0 +margin_right = 120.0 margin_bottom = 677.0 rect_min_size = Vector2( 120, 95 ) custom_constants/separation = -2 @@ -12500,9 +12288,9 @@ __meta__ = { } [node name="item70" type="VBoxContainer" parent="container"] -margin_left = 327.0 +margin_left = 109.0 margin_top = 582.0 -margin_right = 447.0 +margin_right = 229.0 margin_bottom = 677.0 rect_min_size = Vector2( 120, 95 ) custom_constants/separation = -2 @@ -12539,9 +12327,9 @@ __meta__ = { } [node name="item71" type="VBoxContainer" parent="container"] -margin_left = 436.0 +margin_left = 218.0 margin_top = 582.0 -margin_right = 556.0 +margin_right = 338.0 margin_bottom = 677.0 rect_min_size = Vector2( 120, 95 ) custom_constants/separation = -2 @@ -12578,9 +12366,9 @@ __meta__ = { } [node name="item72" type="VBoxContainer" parent="container"] -margin_left = 545.0 +margin_left = 327.0 margin_top = 582.0 -margin_right = 665.0 +margin_right = 447.0 margin_bottom = 677.0 rect_min_size = Vector2( 120, 95 ) custom_constants/separation = -2 @@ -12617,9 +12405,9 @@ __meta__ = { } [node name="item73" type="VBoxContainer" parent="container"] -margin_left = 654.0 +margin_left = 436.0 margin_top = 582.0 -margin_right = 774.0 +margin_right = 556.0 margin_bottom = 677.0 rect_min_size = Vector2( 120, 95 ) custom_constants/separation = -2 @@ -12656,9 +12444,9 @@ __meta__ = { } [node name="item74" type="VBoxContainer" parent="container"] -margin_left = 763.0 +margin_left = 545.0 margin_top = 582.0 -margin_right = 883.0 +margin_right = 665.0 margin_bottom = 677.0 rect_min_size = Vector2( 120, 95 ) custom_constants/separation = -2 @@ -12695,9 +12483,9 @@ __meta__ = { } [node name="item75" type="VBoxContainer" parent="container"] -margin_left = 872.0 +margin_left = 654.0 margin_top = 582.0 -margin_right = 1019.0 +margin_right = 801.0 margin_bottom = 677.0 rect_min_size = Vector2( 120, 95 ) custom_constants/separation = -2 @@ -12735,9 +12523,9 @@ __meta__ = { } [node name="item76" type="VBoxContainer" parent="container"] -margin_left = 1008.0 +margin_left = 790.0 margin_top = 582.0 -margin_right = 1128.0 +margin_right = 910.0 margin_bottom = 677.0 rect_min_size = Vector2( 120, 95 ) custom_constants/separation = -2 @@ -12775,9 +12563,9 @@ __meta__ = { } [node name="item77" type="VBoxContainer" parent="container"] -margin_left = 1117.0 +margin_left = 899.0 margin_top = 582.0 -margin_right = 1237.0 +margin_right = 1019.0 margin_bottom = 677.0 rect_min_size = Vector2( 120, 95 ) custom_constants/separation = -2 @@ -12815,9 +12603,10 @@ __meta__ = { } [node name="item78" type="VBoxContainer" parent="container"] -margin_top = 679.0 -margin_right = 120.0 -margin_bottom = 785.0 +margin_left = 1008.0 +margin_top = 582.0 +margin_right = 1128.0 +margin_bottom = 677.0 rect_min_size = Vector2( 120, 95 ) custom_constants/separation = -2 alignment = 1 @@ -12827,9 +12616,9 @@ __meta__ = { } [node name="title" type="Label" parent="container/item78"] -margin_top = 8.0 +margin_top = 3.0 margin_right = 120.0 -margin_bottom = 39.0 +margin_bottom = 34.0 rect_min_size = Vector2( 70, 0 ) text = "Fractal Worley2D Noise" @@ -12840,9 +12629,9 @@ __meta__ = { [node name="preview" type="TextureRect" parent="container/item78"] material = SubResource( 498 ) -margin_top = 37.0 +margin_top = 32.0 margin_right = 120.0 -margin_bottom = 97.0 +margin_bottom = 92.0 rect_min_size = Vector2( 70, 60 ) size_flags_horizontal = 5 texture = ExtResource( 1 ) @@ -12854,10 +12643,10 @@ __meta__ = { } [node name="item79" type="VBoxContainer" parent="container"] -margin_left = 109.0 -margin_top = 679.0 -margin_right = 229.0 -margin_bottom = 785.0 +margin_left = 1117.0 +margin_top = 582.0 +margin_right = 1237.0 +margin_bottom = 677.0 rect_min_size = Vector2( 120, 95 ) custom_constants/separation = -2 alignment = 1 @@ -12867,9 +12656,9 @@ __meta__ = { } [node name="title" type="Label" parent="container/item79"] -margin_top = 8.0 +margin_top = 3.0 margin_right = 120.0 -margin_bottom = 39.0 +margin_bottom = 34.0 rect_min_size = Vector2( 70, 0 ) text = "Fractal Simplex2D Noise" @@ -12880,9 +12669,9 @@ __meta__ = { [node name="preview" type="TextureRect" parent="container/item79"] material = SubResource( 509 ) -margin_top = 37.0 +margin_top = 32.0 margin_right = 120.0 -margin_bottom = 97.0 +margin_bottom = 92.0 rect_min_size = Vector2( 70, 60 ) size_flags_horizontal = 5 texture = ExtResource( 1 ) @@ -12894,9 +12683,8 @@ __meta__ = { } [node name="item80" type="VBoxContainer" parent="container"] -margin_left = 218.0 margin_top = 679.0 -margin_right = 338.0 +margin_right = 120.0 margin_bottom = 785.0 rect_min_size = Vector2( 120, 95 ) custom_constants/separation = -2 @@ -12934,9 +12722,9 @@ __meta__ = { } [node name="item81" type="VBoxContainer" parent="container"] -margin_left = 327.0 +margin_left = 109.0 margin_top = 679.0 -margin_right = 447.0 +margin_right = 229.0 margin_bottom = 785.0 rect_min_size = Vector2( 120, 95 ) custom_constants/separation = -2 @@ -12974,9 +12762,9 @@ __meta__ = { } [node name="item82" type="VBoxContainer" parent="container"] -margin_left = 436.0 +margin_left = 218.0 margin_top = 679.0 -margin_right = 556.0 +margin_right = 338.0 margin_bottom = 785.0 rect_min_size = Vector2( 120, 95 ) custom_constants/separation = -2 @@ -13014,9 +12802,9 @@ __meta__ = { } [node name="item83" type="VBoxContainer" parent="container"] -margin_left = 545.0 +margin_left = 327.0 margin_top = 679.0 -margin_right = 665.0 +margin_right = 447.0 margin_bottom = 785.0 rect_min_size = Vector2( 120, 95 ) custom_constants/separation = -2 @@ -13054,9 +12842,9 @@ __meta__ = { } [node name="item84" type="VBoxContainer" parent="container"] -margin_left = 654.0 +margin_left = 436.0 margin_top = 679.0 -margin_right = 774.0 +margin_right = 556.0 margin_bottom = 785.0 rect_min_size = Vector2( 120, 95 ) custom_constants/separation = -2 @@ -13094,9 +12882,9 @@ __meta__ = { } [node name="item85" type="VBoxContainer" parent="container"] -margin_left = 763.0 +margin_left = 545.0 margin_top = 679.0 -margin_right = 883.0 +margin_right = 665.0 margin_bottom = 785.0 rect_min_size = Vector2( 120, 95 ) custom_constants/separation = -2 @@ -13134,9 +12922,9 @@ __meta__ = { } [node name="item86" type="VBoxContainer" parent="container"] -margin_left = 872.0 +margin_left = 654.0 margin_top = 679.0 -margin_right = 1019.0 +margin_right = 801.0 margin_bottom = 785.0 rect_min_size = Vector2( 120, 95 ) custom_constants/separation = -2 @@ -13174,9 +12962,9 @@ __meta__ = { } [node name="item87" type="VBoxContainer" parent="container"] -margin_left = 1008.0 +margin_left = 790.0 margin_top = 679.0 -margin_right = 1128.0 +margin_right = 910.0 margin_bottom = 785.0 rect_min_size = Vector2( 120, 95 ) custom_constants/separation = -2 @@ -13213,9 +13001,9 @@ __meta__ = { } [node name="item88" type="VBoxContainer" parent="container"] -margin_left = 1117.0 +margin_left = 899.0 margin_top = 679.0 -margin_right = 1237.0 +margin_right = 1019.0 margin_bottom = 785.0 rect_min_size = Vector2( 120, 95 ) custom_constants/separation = -2 diff --git a/addons/shaderV/rgba/blur/blur9sample.gd b/addons/shaderV/rgba/blur/blur9sample.gd index 7fb9eb1..28fc2d6 100644 --- a/addons/shaderV/rgba/blur/blur9sample.gd +++ b/addons/shaderV/rgba/blur/blur9sample.gd @@ -95,9 +95,17 @@ vec4 blur9sampleFunc(sampler2D _samp_b1ur, vec2 _uv_b1ur, float _lod_b1ur, float """ func _get_code(input_vars: Array, output_vars: Array, mode: int, type: int) -> String: + var texture = "TEXTURE" + var uv = "UV" + + if input_vars[0]: + texture = input_vars[0] + if input_vars[1]: + uv = input_vars[1] + return """vec4 %s%s = blur9sampleFunc(%s, %s.xy, %s, %s); %s = %s%s.rgb; %s = %s%s.a;""" % [ -output_vars[0], output_vars[1], input_vars[0], input_vars[1], input_vars[2], input_vars[3], +output_vars[0], output_vars[1], texture, uv, input_vars[2], input_vars[3], output_vars[0], output_vars[0], output_vars[1], output_vars[1], output_vars[0], output_vars[1]] diff --git a/addons/shaderV/rgba/blur/blurCustom.gd b/addons/shaderV/rgba/blur/blurCustom.gd index af4a73a..e61dbea 100644 --- a/addons/shaderV/rgba/blur/blurCustom.gd +++ b/addons/shaderV/rgba/blur/blurCustom.gd @@ -92,9 +92,17 @@ vec4 blurWithAmountFunc(sampler2D _tex_b1r_cst, vec2 _uv_b1r_cst, float _l0d_b1r """ func _get_code(input_vars: Array, output_vars: Array, mode: int, type: int) -> String: + var texture = "TEXTURE" + var uv = "UV" + + if input_vars[0]: + texture = input_vars[0] + if input_vars[1]: + uv = input_vars[1] + return """vec4 %s%s = blurWithAmountFunc(%s, %s.xy, %s, int(%s), %s); %s = %s%s.rgb; %s = %s%s.a;""" % [ -output_vars[0], output_vars[1], input_vars[0], input_vars[1], input_vars[2], input_vars[3], input_vars[4], +output_vars[0], output_vars[1], texture, uv, input_vars[2], input_vars[3], input_vars[4], output_vars[0], output_vars[0], output_vars[1], output_vars[1], output_vars[0], output_vars[1]] diff --git a/addons/shaderV/rgba/blur/zoomBlur.gd b/addons/shaderV/rgba/blur/zoomBlur.gd index 56874b8..c71b2e8 100644 --- a/addons/shaderV/rgba/blur/zoomBlur.gd +++ b/addons/shaderV/rgba/blur/zoomBlur.gd @@ -99,9 +99,17 @@ vec4 zoomBlurFunc(sampler2D _tex_z00m_blur, vec2 _uv_z00m_blur, int _amount_z00m """ func _get_code(input_vars: Array, output_vars: Array, mode: int, type: int) -> String: + var texture = "TEXTURE" + var uv = "UV" + + if input_vars[0]: + texture = input_vars[0] + if input_vars[1]: + uv = input_vars[1] + return """vec4 %s%s = zoomBlurFunc(%s, %s.xy, int(%s), %s.xy, %s, %s); %s = %s%s.rgb; %s = %s%s.a;""" % [ -output_vars[0], output_vars[1], input_vars[0], input_vars[1], input_vars[4], input_vars[3], input_vars[5], input_vars[2], +output_vars[0], output_vars[1], texture, uv, input_vars[4], input_vars[3], input_vars[5], input_vars[2], output_vars[0], output_vars[0], output_vars[1], output_vars[1], output_vars[0], output_vars[1]] diff --git a/addons/shaderV/rgba/chromaticAberration.gd b/addons/shaderV/rgba/chromaticAberration.gd index fc23472..a21d037 100644 --- a/addons/shaderV/rgba/chromaticAberration.gd +++ b/addons/shaderV/rgba/chromaticAberration.gd @@ -91,9 +91,17 @@ vec4 chr0maticAberrati0nFunc(sampler2D _texture_chr_aberrat1on, vec2 _uv_chr_abe """ func _get_code(input_vars: Array, output_vars: Array, mode: int, type: int) -> String: + var texture = "TEXTURE" + var uv = "UV" + + if input_vars[0]: + texture = input_vars[0] + if input_vars[1]: + uv = input_vars[1] + return """vec4 %s%s = chr0maticAberrati0nFunc(%s, %s.xy, vec3(%s, %s, %s)); %s = %s%s.rgb; %s = %s%s.a;""" % [ -output_vars[0], output_vars[1], input_vars[0], input_vars[1], input_vars[3], input_vars[4], input_vars[2], +output_vars[0], output_vars[1], texture, uv, input_vars[3], input_vars[4], input_vars[2], output_vars[0], output_vars[0], output_vars[1], output_vars[1], output_vars[0], output_vars[1]] diff --git a/addons/shaderV/rgba/clamp.gd b/addons/shaderV/rgba/clamp.gd index 67cf72b..bf853fb 100644 --- a/addons/shaderV/rgba/clamp.gd +++ b/addons/shaderV/rgba/clamp.gd @@ -55,4 +55,10 @@ float clampAlphaBorderFunc(float _color_alpha_clamp, vec2 _uv_clamp){ """ func _get_code(input_vars: Array, output_vars: Array, mode: int, type: int) -> String: - return output_vars[0] + " = clampAlphaBorderFunc(%s, (%s).xy);" % [input_vars[0], input_vars[1]] + var texture = "TEXTURE" + var uv = "UV" + + if input_vars[1]: + uv = input_vars[1] + + return output_vars[0] + " = clampAlphaBorderFunc(%s, (%s).xy);" % [input_vars[0], uv] diff --git a/addons/shaderV/rgba/emboss.gd b/addons/shaderV/rgba/emboss.gd index 35f94ed..b5ed57d 100644 --- a/addons/shaderV/rgba/emboss.gd +++ b/addons/shaderV/rgba/emboss.gd @@ -86,9 +86,17 @@ vec4 emb0ssFunc(sampler2D _tex_emb0ss, vec2 _uv_emb0ss, float _lod_emb0ss, vec2 """ func _get_code(input_vars: Array, output_vars: Array, mode: int, type: int) -> String: + var texture = "TEXTURE" + var uv = "UV" + + if input_vars[0]: + texture = input_vars[0] + if input_vars[1]: + uv = input_vars[1] + return """vec4 %s%s = emb0ssFunc(%s, %s.xy, %s, vec2(%s), %s); %s = %s%s.rgb; %s = %s%s.a;""" % [ -output_vars[0], output_vars[1], input_vars[0], input_vars[1], input_vars[2], input_vars[3], input_vars[4], +output_vars[0], output_vars[1], texture, uv, input_vars[2], input_vars[3], input_vars[4], output_vars[0], output_vars[0], output_vars[1], output_vars[1], output_vars[0], output_vars[1]] diff --git a/addons/shaderV/rgba/fireFX.gd b/addons/shaderV/rgba/fireFX.gd index 3cb2dda..892516b 100644 --- a/addons/shaderV/rgba/fireFX.gd +++ b/addons/shaderV/rgba/fireFX.gd @@ -211,10 +211,15 @@ vec4 fireFXFunc(vec2 _uv_fire, vec2 _dir_fire, float _speed_fire, float _time_fi """ func _get_code(input_vars: Array, output_vars: Array, mode: int, type: int) -> String: + var uv = "UV" + + if input_vars[0]: + uv = input_vars[0] + return """vec4 %s%s = fireFXFunc(%s.xy, %s.xy, %s, %s, vec4(%s, %s), vec4(%s, %s), vec4(%s, %s), %s, %s, %s); %s = %s%s.rgb; %s = %s%s.a;""" % [ -output_vars[0], output_vars[1], input_vars[0], input_vars[1], input_vars[2], input_vars[12], input_vars[3], input_vars[4], +output_vars[0], output_vars[1], uv, input_vars[1], input_vars[2], input_vars[12], input_vars[3], input_vars[4], input_vars[5], input_vars[6], input_vars[7], input_vars[8], input_vars[9], input_vars[10], input_vars[11], output_vars[0], output_vars[0], output_vars[1], output_vars[1], output_vars[0], output_vars[1]] diff --git a/addons/shaderV/rgba/generate_shapes/chekerboardPattern.gd b/addons/shaderV/rgba/generate_shapes/chekerboardPattern.gd index 715d13e..ccddbdc 100644 --- a/addons/shaderV/rgba/generate_shapes/chekerboardPattern.gd +++ b/addons/shaderV/rgba/generate_shapes/chekerboardPattern.gd @@ -73,7 +73,12 @@ float checkerb0ardPatternFunc(vec2 uv, vec2 _checker_size){ """ func _get_code(input_vars: Array, output_vars: Array, mode: int, type: int) -> String: + var uv = "UV" + + if input_vars[0]: + uv = input_vars[0] + return """%s = %s; %s = checkerb0ardPatternFunc(%s.xy, %s.xy) * %s;""" % [ output_vars[0], input_vars[2], -output_vars[1], input_vars[0], input_vars[1], input_vars[3]] +output_vars[1], uv, input_vars[1], input_vars[3]] diff --git a/addons/shaderV/rgba/generate_shapes/generateCircle.gd b/addons/shaderV/rgba/generate_shapes/generateCircle.gd index df061e2..2979310 100644 --- a/addons/shaderV/rgba/generate_shapes/generateCircle.gd +++ b/addons/shaderV/rgba/generate_shapes/generateCircle.gd @@ -101,6 +101,11 @@ vec4 generateCirc1eFunc(vec2 _uv_circ1e, vec2 _center_circ1e, vec2 _scale_factor """ func _get_code(input_vars: Array, output_vars: Array, mode: int, type: int) -> String: + var uv = "UV" + + if input_vars[0]: + uv = input_vars[0] + return """%s = %s; %s = generateCirc1eFunc(%s.xy, %s.xy, %s.xy, %s, %s, %s).a * %s;""" % [output_vars[0], -input_vars[6], output_vars[1], input_vars[0], input_vars[1], input_vars[2], input_vars[3], input_vars[4], input_vars[5], input_vars[7]] +input_vars[6], output_vars[1], uv, input_vars[1], input_vars[2], input_vars[3], input_vars[4], input_vars[5], input_vars[7]] diff --git a/addons/shaderV/rgba/generate_shapes/generateCircle2.gd b/addons/shaderV/rgba/generate_shapes/generateCircle2.gd index d8d5184..209930d 100644 --- a/addons/shaderV/rgba/generate_shapes/generateCircle2.gd +++ b/addons/shaderV/rgba/generate_shapes/generateCircle2.gd @@ -96,10 +96,15 @@ vec4 generateCircle2Func(vec2 _uv_gc2, vec2 _p0s_gc2, vec2 _sca1e_gc2, float _ra """ func _get_code(input_vars: Array, output_vars: Array, mode: int, type: int) -> String: + var uv = "UV" + + if input_vars[0]: + uv = input_vars[0] + return """vec4 %s%s = generateCircle2Func(%s.xy, %s.xy, %s.xy, %s, %s, %s, vec4(%s, %s)); %s = %s%s.rgb; %s = %s%s.a;""" % [ -output_vars[0], output_vars[1], input_vars[0], input_vars[1], input_vars[2], input_vars[3], +output_vars[0], output_vars[1], uv, input_vars[1], input_vars[2], input_vars[3], input_vars[4], input_vars[5], input_vars[6], input_vars[7], output_vars[0], output_vars[0], output_vars[1], output_vars[1], output_vars[0], output_vars[1]] diff --git a/addons/shaderV/rgba/generate_shapes/generateRect.gd b/addons/shaderV/rgba/generate_shapes/generateRect.gd deleted file mode 100644 index 3cc49f2..0000000 --- a/addons/shaderV/rgba/generate_shapes/generateRect.gd +++ /dev/null @@ -1,87 +0,0 @@ -tool -extends VisualShaderNodeCustom -class_name VisualShaderNodeRGBAcreateRect - -func _init() -> void: - set_input_port_default_value(1, Vector3(0.5, 0.5, 0)) - set_input_port_default_value(2, Vector3(0.5, 0.5, 0.0)) - set_input_port_default_value(3, Vector3(1.0, 1.0, 1.0)) - set_input_port_default_value(4, 1.0) - -func _get_name() -> String: - return "RectShape" - -func _get_category() -> String: - return "RGBA" - -func _get_subcategory(): - return "Shapes" - -func _get_description() -> String: - return "Rectangle creation" - -func _get_return_icon_type() -> int: - return VisualShaderNode.PORT_TYPE_VECTOR - -func _get_input_port_count() -> int: - return 5 - -func _get_input_port_name(port: int): - match port: - 0: - return "uv" - 1: - return "pos" - 2: - return "scale" - 3: - return "color" - 4: - return "alpha" - -func _get_input_port_type(port: int): - match port: - 0: - return VisualShaderNode.PORT_TYPE_VECTOR - 1: - return VisualShaderNode.PORT_TYPE_VECTOR - 2: - return VisualShaderNode.PORT_TYPE_VECTOR - 3: - return VisualShaderNode.PORT_TYPE_VECTOR - 4: - return VisualShaderNode.PORT_TYPE_SCALAR - -func _get_output_port_count() -> int: - return 2 - -func _get_output_port_name(port: int): - match port: - 0: - return "col" - 1: - return "alpha" - -func _get_output_port_type(port: int): - match port: - 0: - return VisualShaderNode.PORT_TYPE_VECTOR - 1: - return VisualShaderNode.PORT_TYPE_SCALAR - -func _get_global_code(mode: int) -> String: - return """ -float rectCreati0nFunc(vec2 _uv_rect_generate, vec2 _pos_rect_generate, vec2 _size_rect_generate){ - vec2 sw_rect_gen = _pos_rect_generate - _size_rect_generate / 2.0; - vec2 ne_rect_gen = _pos_rect_generate + _size_rect_generate / 2.0; - vec2 _pct_temp_var = step(sw_rect_gen, _uv_rect_generate); - _pct_temp_var -= step(ne_rect_gen, _uv_rect_generate); - return _pct_temp_var.x * _pct_temp_var.y; -} -""" - -func _get_code(input_vars: Array, output_vars: Array, mode: int, type: int) -> String: - return """%s = %s; -%s = rectCreati0nFunc(%s.xy, %s.xy, %s.xy) * %s;""" % [ -output_vars[0],input_vars[3], -output_vars[1], input_vars[0], input_vars[1], input_vars[2], input_vars[4]] diff --git a/addons/shaderV/rgba/generate_shapes/generateRegularNgon.gd b/addons/shaderV/rgba/generate_shapes/generateRegularNgon.gd index b08989f..044cfc5 100644 --- a/addons/shaderV/rgba/generate_shapes/generateRegularNgon.gd +++ b/addons/shaderV/rgba/generate_shapes/generateRegularNgon.gd @@ -98,7 +98,12 @@ float p0lyg0nFunc(vec2 _uv_p0lyg0n, vec2 _pos_p0lyg0n, vec2 _size_p0lyg0n, float """ func _get_code(input_vars: Array, output_vars: Array, mode: int, type: int) -> String: + var uv = "UV" + + if input_vars[0]: + uv = input_vars[0] + return """%s = %s; %s = p0lyg0nFunc(%s.xy, %s.xy, %s.xy, %s, %s, %s) * %s;""" % [ output_vars[0], input_vars[6], -output_vars[1], input_vars[0], input_vars[1], input_vars[3], input_vars[2], input_vars[4], input_vars[5], input_vars[7]] +output_vars[1], uv, input_vars[1], input_vars[3], input_vars[2], input_vars[4], input_vars[5], input_vars[7]] diff --git a/addons/shaderV/rgba/generate_shapes/generateSpiral.gd b/addons/shaderV/rgba/generate_shapes/generateSpiral.gd index 5b24b18..8ded945 100644 --- a/addons/shaderV/rgba/generate_shapes/generateSpiral.gd +++ b/addons/shaderV/rgba/generate_shapes/generateSpiral.gd @@ -102,10 +102,15 @@ vec4 generateSp1ralFunc(vec2 _uv_genSp1r, vec2 _p1v0t_genSp1r, float _s1ze_genSp """ func _get_code(input_vars: Array, output_vars: Array, mode: int, type: int) -> String: + var uv = "UV" + + if input_vars[0]: + uv = input_vars[0] + return """vec4 %s%s = generateSp1ralFunc(%s.xy, %s.xy, %s, %s, %s, %s, %s, vec4(%s, %s)); %s = %s%s.rgb; %s = %s%s.a;""" % [ -output_vars[0], output_vars[1], input_vars[0], input_vars[1], input_vars[2], input_vars[3], input_vars[5], +output_vars[0], output_vars[1], uv, input_vars[1], input_vars[2], input_vars[3], input_vars[5], input_vars[4], input_vars[6], input_vars[7], input_vars[8], output_vars[0], output_vars[0], output_vars[1], output_vars[1], output_vars[0], output_vars[1]] diff --git a/addons/shaderV/rgba/generate_shapes/gridShape.gd b/addons/shaderV/rgba/generate_shapes/gridShape.gd index 033a8fc..661ab12 100644 --- a/addons/shaderV/rgba/generate_shapes/gridShape.gd +++ b/addons/shaderV/rgba/generate_shapes/gridShape.gd @@ -95,10 +95,15 @@ vec4 gridFunc(vec2 _grid_uv, vec2 _gridline_thickness, vec2 _gridline_smooth, ve """ func _get_code(input_vars: Array, output_vars: Array, mode: int, type: int) -> String: + var uv = "UV" + + if input_vars[0]: + uv = input_vars[0] + return """vec4 %s%s = gridFunc(%s.xy, %s.xy, %s.xy, %s.xy, vec4(%s, %s), vec4(%s, %s)); %s = %s%s.rgb; %s = %s%s.a;""" % [ -output_vars[0], output_vars[1], input_vars[0], input_vars[2], input_vars[3], input_vars[1], +output_vars[0], output_vars[1], uv, input_vars[2], input_vars[3], input_vars[1], input_vars[4], input_vars[5], input_vars[6], input_vars[7], output_vars[0], output_vars[0], output_vars[1], output_vars[1], output_vars[0], output_vars[1]] diff --git a/addons/shaderV/rgba/generate_shapes/scanLinesSharp.gd b/addons/shaderV/rgba/generate_shapes/scanLinesSharp.gd index 578628a..377f8af 100644 --- a/addons/shaderV/rgba/generate_shapes/scanLinesSharp.gd +++ b/addons/shaderV/rgba/generate_shapes/scanLinesSharp.gd @@ -87,7 +87,12 @@ float scanL1nesSharpFunc(vec2 _uv_scL1Shrp, float _am0nt_scL1Shrp, float _f1ll_s """ func _get_code(input_vars: Array, output_vars: Array, mode: int, type: int) -> String: + var uv = "UV" + + if input_vars[0]: + uv = input_vars[0] + return """%s = %s; %s = scanL1nesSharpFunc(%s.xy, %s, %s, %s, %s) * %s;""" % [ output_vars[0], input_vars[5], -output_vars[1], input_vars[0], input_vars[1], input_vars[2], input_vars[3], input_vars[4], input_vars[6]] +output_vars[1], uv, input_vars[1], input_vars[2], input_vars[3], input_vars[4], input_vars[6]] diff --git a/addons/shaderV/rgba/generate_shapes/stripesRandom.gd b/addons/shaderV/rgba/generate_shapes/stripesRandom.gd index 612dea6..40b7452 100644 --- a/addons/shaderV/rgba/generate_shapes/stripesRandom.gd +++ b/addons/shaderV/rgba/generate_shapes/stripesRandom.gd @@ -78,6 +78,11 @@ float generateRand0mStripesFunc(vec2 _uv_stripes, float _fill_stripes, float _am """ func _get_code(input_vars: Array, output_vars: Array, mode: int, type: int) -> String: + var uv = "UV" + + if input_vars[0]: + uv = input_vars[0] + return """%s = %s; %s = generateRand0mStripesFunc(%s.xy, %s, %s) * %s;""" % [output_vars[0], input_vars[3], -output_vars[1], input_vars[0], input_vars[1], input_vars[2], input_vars[4]] +output_vars[1], uv, input_vars[1], input_vars[2], input_vars[4]] diff --git a/addons/shaderV/rgba/glow/glowEmpty.gd b/addons/shaderV/rgba/glow/glowEmpty.gd index 5b69286..3bfdeb6 100644 --- a/addons/shaderV/rgba/glow/glowEmpty.gd +++ b/addons/shaderV/rgba/glow/glowEmpty.gd @@ -126,10 +126,18 @@ float _rad_in0ut_Empty, float _intens_inner_gl0wEmpt, float _intens_outer_gl0wEm """ func _get_code(input_vars: Array, output_vars: Array, mode: int, type: int) -> String: + var texture = "TEXTURE" + var uv = "UV" + + if input_vars[0]: + texture = input_vars[0] + if input_vars[1]: + uv = input_vars[1] + return """vec4 %s%s = inoutGl0wEmptyFunc(%s, %s.xy, %s, %s, %s, %s, vec4(%s, %s)); %s = %s%s.rgb; %s = %s%s.a;""" % [ -output_vars[0], output_vars[1], input_vars[0], input_vars[1], input_vars[2], input_vars[3], +output_vars[0], output_vars[1], texture, uv, input_vars[2], input_vars[3], input_vars[4], input_vars[5], input_vars[6], input_vars[7], output_vars[0], output_vars[0], output_vars[1], output_vars[1], output_vars[0], output_vars[1]] diff --git a/addons/shaderV/rgba/glow/innerGlow.gd b/addons/shaderV/rgba/glow/innerGlow.gd index 16633a2..f568ad4 100644 --- a/addons/shaderV/rgba/glow/innerGlow.gd +++ b/addons/shaderV/rgba/glow/innerGlow.gd @@ -114,9 +114,17 @@ vec4 innerGl0wFunc(sampler2D _samp_1ngl0w, vec2 _uv_1ngl0w, float _l0d_1ngl0w, f """ func _get_code(input_vars: Array, output_vars: Array, mode: int, type: int) -> String: + var texture = "TEXTURE" + var uv = "UV" + + if input_vars[0]: + texture = input_vars[0] + if input_vars[1]: + uv = input_vars[1] + return """vec4 %s%s = innerGl0wFunc(%s, %s.xy, %s, %s, %s, vec4(%s, %s)); %s = %s%s.rgb; %s = %s%s.a;""" % [ -output_vars[0], output_vars[1], input_vars[0], input_vars[1], input_vars[2], input_vars[3], input_vars[4], input_vars[5], input_vars[6], +output_vars[0], output_vars[1], texture, uv, input_vars[2], input_vars[3], input_vars[4], input_vars[5], input_vars[6], output_vars[0], output_vars[0], output_vars[1], output_vars[1], output_vars[0], output_vars[1]] diff --git a/addons/shaderV/rgba/glow/innerGlowEmpty.gd b/addons/shaderV/rgba/glow/innerGlowEmpty.gd index a60bebd..df7117d 100644 --- a/addons/shaderV/rgba/glow/innerGlowEmpty.gd +++ b/addons/shaderV/rgba/glow/innerGlowEmpty.gd @@ -114,9 +114,17 @@ vec4 innerGl0wEmptyFunc(sampler2D _samp_1ngl0wEmpt, vec2 _uv_1ngl0wEmpt, float _ """ func _get_code(input_vars: Array, output_vars: Array, mode: int, type: int) -> String: + var texture = "TEXTURE" + var uv = "UV" + + if input_vars[0]: + texture = input_vars[0] + if input_vars[1]: + uv = input_vars[1] + return """vec4 %s%s = innerGl0wEmptyFunc(%s, %s.xy, %s, %s, %s, vec4(%s, %s)); %s = %s%s.rgb; %s = %s%s.a;""" % [ -output_vars[0], output_vars[1], input_vars[0], input_vars[1], input_vars[2], input_vars[3], input_vars[4], input_vars[5], input_vars[6], +output_vars[0], output_vars[1], texture, uv, input_vars[2], input_vars[3], input_vars[4], input_vars[5], input_vars[6], output_vars[0], output_vars[0], output_vars[1], output_vars[1], output_vars[0], output_vars[1]] diff --git a/addons/shaderV/rgba/glow/outerGlow.gd b/addons/shaderV/rgba/glow/outerGlow.gd index 9768db4..3bdf84d 100644 --- a/addons/shaderV/rgba/glow/outerGlow.gd +++ b/addons/shaderV/rgba/glow/outerGlow.gd @@ -115,9 +115,17 @@ vec4 outerGl0wFunc(sampler2D _samp_1ngl0w, vec2 _uv_1ngl0w, float _l0d_1ngl0w, f """ func _get_code(input_vars: Array, output_vars: Array, mode: int, type: int) -> String: + var texture = "TEXTURE" + var uv = "UV" + + if input_vars[0]: + texture = input_vars[0] + if input_vars[1]: + uv = input_vars[1] + return """vec4 %s%s = outerGl0wFunc(%s, %s.xy, %s, %s, %s, vec4(%s, %s)); %s = %s%s.rgb; %s = %s%s.a;""" % [ -output_vars[0], output_vars[1], input_vars[0], input_vars[1], input_vars[2], input_vars[3], input_vars[4], input_vars[5], input_vars[6], +output_vars[0], output_vars[1], texture, uv, input_vars[2], input_vars[3], input_vars[4], input_vars[5], input_vars[6], output_vars[0], output_vars[0], output_vars[1], output_vars[1], output_vars[0], output_vars[1]] diff --git a/addons/shaderV/rgba/glow/outerGlowEmpty.gd b/addons/shaderV/rgba/glow/outerGlowEmpty.gd index 2e45196..375bead 100644 --- a/addons/shaderV/rgba/glow/outerGlowEmpty.gd +++ b/addons/shaderV/rgba/glow/outerGlowEmpty.gd @@ -114,9 +114,17 @@ vec4 outerGl0wEmptyFunc(sampler2D _samp_1ngl0wEmpt, vec2 _uv_1ngl0wEmpt, float _ """ func _get_code(input_vars: Array, output_vars: Array, mode: int, type: int) -> String: + var texture = "TEXTURE" + var uv = "UV" + + if input_vars[0]: + texture = input_vars[0] + if input_vars[1]: + uv = input_vars[1] + return """vec4 %s%s = outerGl0wEmptyFunc(%s, %s.xy, %s, %s, %s, vec4(%s, %s)); %s = %s%s.rgb; %s = %s%s.a;""" % [ -output_vars[0], output_vars[1], input_vars[0], input_vars[1], input_vars[2], input_vars[3], input_vars[4], input_vars[5], input_vars[6], +output_vars[0], output_vars[1], texture, uv, input_vars[2], input_vars[3], input_vars[4], input_vars[5], input_vars[6], output_vars[0], output_vars[0], output_vars[1], output_vars[1], output_vars[0], output_vars[1]] diff --git a/addons/shaderV/rgba/gradient4corners.gd b/addons/shaderV/rgba/gradient4corners.gd index 6a2d62d..db54f59 100644 --- a/addons/shaderV/rgba/gradient4corners.gd +++ b/addons/shaderV/rgba/gradient4corners.gd @@ -99,10 +99,15 @@ vec4 gradient4cornersFunc(vec2 _uv_c0rner, vec4 _top_left_c0rner, vec4 _top_righ """ func _get_code(input_vars: Array, output_vars: Array, mode: int, type: int) -> String: + var uv = "UV" + + if input_vars[0]: + uv = input_vars[0] + return """vec4 %s%s = gradient4cornersFunc(%s.xy, vec4(%s, %s), vec4(%s, %s), vec4(%s, %s), vec4(%s, %s)); %s = %s%s.rgb; %s = %s%s.a;""" % [ -output_vars[0], output_vars[1], input_vars[0], input_vars[1], input_vars[2], input_vars[3], +output_vars[0], output_vars[1], uv, input_vars[1], input_vars[2], input_vars[3], input_vars[4], input_vars[5], input_vars[6], input_vars[7], input_vars[8], output_vars[0], output_vars[0], output_vars[1], output_vars[1], output_vars[0], output_vars[1]] diff --git a/addons/shaderV/rgba/noise/fractal/generic2d_fractal.gd b/addons/shaderV/rgba/noise/fractal/generic2d_fractal.gd index 8ae07a1..7747e85 100644 --- a/addons/shaderV/rgba/noise/fractal/generic2d_fractal.gd +++ b/addons/shaderV/rgba/noise/fractal/generic2d_fractal.gd @@ -110,6 +110,11 @@ float genericNoise2DFBM(vec2 _uv_gnfbm, int _oct_gnfbm, vec2 _per_gnfbm, float _ """ func _get_code(input_vars: Array, output_vars: Array, mode: int, type: int) -> String: + var uv = "UV" + + if input_vars[0]: + uv = input_vars[0] + return "%s = genericNoise2DFBM(%s.xy, int(%s), %s.xy, %s, %s, %s, %s, %s.xy);" % [ - output_vars[0], input_vars[0], input_vars[1], input_vars[2], input_vars[3], + output_vars[0], uv, input_vars[1], input_vars[2], input_vars[3], input_vars[4], input_vars[5], input_vars[6], input_vars[7]] diff --git a/addons/shaderV/rgba/noise/fractal/perlin2d_fractal.gd b/addons/shaderV/rgba/noise/fractal/perlin2d_fractal.gd index 8cc0324..0e3c3c4 100644 --- a/addons/shaderV/rgba/noise/fractal/perlin2d_fractal.gd +++ b/addons/shaderV/rgba/noise/fractal/perlin2d_fractal.gd @@ -134,6 +134,11 @@ float perlinNoise2DFBM(vec2 _uv_pn2fbm, int _oct_pn2fbm, vec2 _per_pn2fbm, float """ func _get_code(input_vars: Array, output_vars: Array, mode: int, type: int) -> String: + var uv = "UV" + + if input_vars[0]: + uv = input_vars[0] + return "%s = perlinNoise2DFBM(%s.xy, int(%s), %s.xy, %s, %s, %s, %s, %s.xy);" % [ - output_vars[0], input_vars[0], input_vars[1], input_vars[2], input_vars[3], + output_vars[0], uv, input_vars[1], input_vars[2], input_vars[3], input_vars[4], input_vars[5], input_vars[6], input_vars[7]] diff --git a/addons/shaderV/rgba/noise/fractal/perlin3d_fractal.gd b/addons/shaderV/rgba/noise/fractal/perlin3d_fractal.gd index 4eb716d..8b43359 100644 --- a/addons/shaderV/rgba/noise/fractal/perlin3d_fractal.gd +++ b/addons/shaderV/rgba/noise/fractal/perlin3d_fractal.gd @@ -168,6 +168,11 @@ float perlinNoise3DFBM(vec2 _uv_pn3fbm, int _oct_pn3fbm, vec2 _per_pn3fbm, float """ func _get_code(input_vars: Array, output_vars: Array, mode: int, type: int) -> String: + var uv = "UV" + + if input_vars[0]: + uv = input_vars[0] + return "%s = perlinNoise3DFBM(%s.xy, int(%s), %s.xy, %s, %s, %s, %s, %s.xy, %s);" % [ - output_vars[0], input_vars[0], input_vars[1], input_vars[2], input_vars[3], + output_vars[0], uv, input_vars[1], input_vars[2], input_vars[3], input_vars[4], input_vars[5], input_vars[6], input_vars[7], input_vars[8]] diff --git a/addons/shaderV/rgba/noise/fractal/perlin4d_fractal.gd b/addons/shaderV/rgba/noise/fractal/perlin4d_fractal.gd index 65b18c6..dae527a 100644 --- a/addons/shaderV/rgba/noise/fractal/perlin4d_fractal.gd +++ b/addons/shaderV/rgba/noise/fractal/perlin4d_fractal.gd @@ -238,6 +238,11 @@ float perlinNoise4DFBM(vec2 _uv_pn4fbm, int _oct_pn4fbm, vec2 _per_pn4fbm, float """ func _get_code(input_vars: Array, output_vars: Array, mode: int, type: int) -> String: + var uv = "UV" + + if input_vars[0]: + uv = input_vars[0] + return "%s = perlinNoise4DFBM(%s.xy, int(%s), %s.xy, %s, %s, %s, %s, %s.xy, %s, %s);" % [ - output_vars[0], input_vars[0], input_vars[1], input_vars[2], input_vars[3], + output_vars[0], uv, input_vars[1], input_vars[2], input_vars[3], input_vars[4], input_vars[5], input_vars[6], input_vars[7], input_vars[9], input_vars[8]] diff --git a/addons/shaderV/rgba/noise/fractal/simplex2d_fractal.gd b/addons/shaderV/rgba/noise/fractal/simplex2d_fractal.gd index a5bba16..bd83f6d 100644 --- a/addons/shaderV/rgba/noise/fractal/simplex2d_fractal.gd +++ b/addons/shaderV/rgba/noise/fractal/simplex2d_fractal.gd @@ -130,6 +130,11 @@ float simplexNoise2DFBM(vec2 _uv_sn2fbm, int _oct_sn2fbm, vec2 _per_sn2fbm, floa """ func _get_code(input_vars: Array, output_vars: Array, mode: int, type: int) -> String: + var uv = "UV" + + if input_vars[0]: + uv = input_vars[0] + return "%s = simplexNoise2DFBM(%s.xy, int(%s), %s.xy, %s, %s, %s, %s, %s.xy);" % [ - output_vars[0], input_vars[0], input_vars[1], input_vars[2], input_vars[3], + output_vars[0], uv, input_vars[1], input_vars[2], input_vars[3], input_vars[4], input_vars[5], input_vars[6], input_vars[7]] diff --git a/addons/shaderV/rgba/noise/fractal/simplex3d_fractal.gd b/addons/shaderV/rgba/noise/fractal/simplex3d_fractal.gd index ce98b2d..a0a9095 100644 --- a/addons/shaderV/rgba/noise/fractal/simplex3d_fractal.gd +++ b/addons/shaderV/rgba/noise/fractal/simplex3d_fractal.gd @@ -160,6 +160,11 @@ float simplexNoise3DFBM(vec2 _uv_sn3fbm, int _oct_sn3fbm, vec2 _per_sn3fbm, floa """ func _get_code(input_vars: Array, output_vars: Array, mode: int, type: int) -> String: + var uv = "UV" + + if input_vars[0]: + uv = input_vars[0] + return "%s = simplexNoise3DFBM(%s.xy, int(%s), %s.xy, %s, %s, %s, %s, %s.xy, %s);" % [ - output_vars[0], input_vars[0], input_vars[1], input_vars[2], input_vars[3], + output_vars[0], uv, input_vars[1], input_vars[2], input_vars[3], input_vars[4], input_vars[5], input_vars[6], input_vars[7], input_vars[8]] diff --git a/addons/shaderV/rgba/noise/fractal/simplex4d_fractal.gd b/addons/shaderV/rgba/noise/fractal/simplex4d_fractal.gd index ac8e19b..6642705 100644 --- a/addons/shaderV/rgba/noise/fractal/simplex4d_fractal.gd +++ b/addons/shaderV/rgba/noise/fractal/simplex4d_fractal.gd @@ -176,6 +176,11 @@ float simplexNoise4DFBM(vec2 _uv_sn4fbm, int _oct_sn4fbm, vec2 _per_sn4fbm, floa """ func _get_code(input_vars: Array, output_vars: Array, mode: int, type: int) -> String: + var uv = "UV" + + if input_vars[0]: + uv = input_vars[0] + return "%s = simplexNoise4DFBM(%s.xy, int(%s), %s.xy, %s, %s, %s, %s, %s.xy, %s, %s);" % [ - output_vars[0], input_vars[0], input_vars[1], input_vars[2], input_vars[3], + output_vars[0], uv, input_vars[1], input_vars[2], input_vars[3], input_vars[4], input_vars[5], input_vars[6], input_vars[7], input_vars[9], input_vars[8]] diff --git a/addons/shaderV/rgba/noise/fractal/worley2d_fractal.gd b/addons/shaderV/rgba/noise/fractal/worley2d_fractal.gd index 2d8c6aa..a5300d3 100644 --- a/addons/shaderV/rgba/noise/fractal/worley2d_fractal.gd +++ b/addons/shaderV/rgba/noise/fractal/worley2d_fractal.gd @@ -147,6 +147,11 @@ float cellularNoise2DFBM(vec2 _uv_cnfbm, int _oct_cnfbm, vec2 _per_cnfbm, float """ func _get_code(input_vars: Array, output_vars: Array, mode: int, type: int) -> String: + var uv = "UV" + + if input_vars[0]: + uv = input_vars[0] + return "%s = cellularNoise2DFBM(%s.xy, int(%s), %s.xy, %s, %s, %s, %s, %s.xy, %s, %s);" % [ - output_vars[0], input_vars[0], input_vars[1], input_vars[2], input_vars[3], + output_vars[0], uv, input_vars[1], input_vars[2], input_vars[3], input_vars[4], input_vars[5], input_vars[6], input_vars[7], input_vars[8], input_vars[9]] diff --git a/addons/shaderV/rgba/noise/fractal/worley3d_fractal.gd b/addons/shaderV/rgba/noise/fractal/worley3d_fractal.gd index 931b573..71d1c52 100644 --- a/addons/shaderV/rgba/noise/fractal/worley3d_fractal.gd +++ b/addons/shaderV/rgba/noise/fractal/worley3d_fractal.gd @@ -257,6 +257,11 @@ float cellularNoise3DFBM(vec2 _uv_cnfbm, int _oct_cnfbm, vec2 _per_cnfbm, float """ func _get_code(input_vars: Array, output_vars: Array, mode: int, type: int) -> String: + var uv = "UV" + + if input_vars[0]: + uv = input_vars[0] + return "%s = cellularNoise3DFBM(%s.xy, int(%s), %s.xy, %s, %s, %s, %s, %s.xy, %s, %s, %s);" % [ - output_vars[0], input_vars[0], input_vars[1], input_vars[2], input_vars[3], input_vars[4], + output_vars[0], uv, input_vars[1], input_vars[2], input_vars[3], input_vars[4], input_vars[5], input_vars[6], input_vars[7], input_vars[8], input_vars[9], input_vars[10]] diff --git a/addons/shaderV/rgba/noise/generic2d.gd b/addons/shaderV/rgba/noise/generic2d.gd index ebcf7d9..a3ae523 100644 --- a/addons/shaderV/rgba/noise/generic2d.gd +++ b/addons/shaderV/rgba/noise/generic2d.gd @@ -74,5 +74,10 @@ float genericNoise2D(vec2 _x_gener1c2D) { """ func _get_code(input_vars: Array, output_vars: Array, mode: int, type: int) -> String: + var uv = "UV" + + if input_vars[0]: + uv = input_vars[0] + return "%s = genericNoise2D((%s.xy + %s.xy) * %s);" % [ - output_vars[0], input_vars[0], input_vars[1], input_vars[2]] + output_vars[0], uv, input_vars[1], input_vars[2]] diff --git a/addons/shaderV/rgba/noise/perlin2d.gd b/addons/shaderV/rgba/noise/perlin2d.gd index 1f2c752..2a94a69 100644 --- a/addons/shaderV/rgba/noise/perlin2d.gd +++ b/addons/shaderV/rgba/noise/perlin2d.gd @@ -110,5 +110,10 @@ float perlin2dN0iseFunc(vec2 P, vec2 _per10d_perl2) { """ func _get_code(input_vars: Array, output_vars: Array, mode: int, type: int) -> String: + var uv = "UV" + + if input_vars[0]: + uv = input_vars[0] + return "%s = perlin2dN0iseFunc((%s.xy+%s.xy)*%s, %s.xy);" % [ -output_vars[0], input_vars[0], input_vars[1], input_vars[2], input_vars[3]] +output_vars[0], uv, input_vars[1], input_vars[2], input_vars[3]] diff --git a/addons/shaderV/rgba/noise/perlin3d.gd b/addons/shaderV/rgba/noise/perlin3d.gd index 6c04f60..b769c84 100644 --- a/addons/shaderV/rgba/noise/perlin3d.gd +++ b/addons/shaderV/rgba/noise/perlin3d.gd @@ -135,5 +135,10 @@ float perlin3dNoiseFunc(vec3 P) { """ func _get_code(input_vars: Array, output_vars: Array, mode: int, type: int) -> String: + var uv = "UV" + + if input_vars[0]: + uv = input_vars[0] + return "%s = perlin3dNoiseFunc(vec3((%s.xy+%s.xy) * %s, %s));" % [ -output_vars[0], input_vars[0], input_vars[1], input_vars[2], input_vars[3]] +output_vars[0], uv, input_vars[1], input_vars[2], input_vars[3]] diff --git a/addons/shaderV/rgba/noise/perlin4d.gd b/addons/shaderV/rgba/noise/perlin4d.gd index 6deda75..f3f709f 100644 --- a/addons/shaderV/rgba/noise/perlin4d.gd +++ b/addons/shaderV/rgba/noise/perlin4d.gd @@ -205,5 +205,10 @@ float perlin4dNoiseFunc(vec4 P) { """ func _get_code(input_vars: Array, output_vars: Array, mode: int, type: int) -> String: + var uv = "UV" + + if input_vars[0]: + uv = input_vars[0] + return "%s = perlin4dNoiseFunc(vec4((%s.xy + %s.xy) * %s, %s, %s));" % [ -output_vars[0], input_vars[0], input_vars[1], input_vars[2], input_vars[3], input_vars[4]] +output_vars[0], uv, input_vars[1], input_vars[2], input_vars[3], input_vars[4]] diff --git a/addons/shaderV/rgba/noise/perlinPeriodic3d.gd b/addons/shaderV/rgba/noise/perlinPeriodic3d.gd index afc7dc2..cad7c25 100644 --- a/addons/shaderV/rgba/noise/perlinPeriodic3d.gd +++ b/addons/shaderV/rgba/noise/perlinPeriodic3d.gd @@ -140,5 +140,10 @@ float perlin3dPeriodicN0iseFunc(vec3 P, vec3 rep) { """ func _get_code(input_vars: Array, output_vars: Array, mode: int, type: int) -> String: + var uv = "UV" + + if input_vars[0]: + uv = input_vars[0] + return "%s = perlin3dPeriodicN0iseFunc(vec3((%s.xy + %s.xy) * %s, %s), %s);" % [ -output_vars[0], input_vars[0], input_vars[1], input_vars[2], input_vars[4], input_vars[3]] +output_vars[0], uv, input_vars[1], input_vars[2], input_vars[4], input_vars[3]] diff --git a/addons/shaderV/rgba/noise/simplex2d.gd b/addons/shaderV/rgba/noise/simplex2d.gd index ae15bd7..6998140 100644 --- a/addons/shaderV/rgba/noise/simplex2d.gd +++ b/addons/shaderV/rgba/noise/simplex2d.gd @@ -97,5 +97,10 @@ float simplex2dN0iseFunc(vec2 v) { """ func _get_code(input_vars: Array, output_vars: Array, mode: int, type: int) -> String: + var uv = "UV" + + if input_vars[0]: + uv = input_vars[0] + return "%s = simplex2dN0iseFunc((%s.xy+%s.xy)*%s);" % [ -output_vars[0], input_vars[0], input_vars[1], input_vars[2]] +output_vars[0], uv, input_vars[1], input_vars[2]] diff --git a/addons/shaderV/rgba/noise/simplex3d.gd b/addons/shaderV/rgba/noise/simplex3d.gd index 75b997a..534a243 100644 --- a/addons/shaderV/rgba/noise/simplex3d.gd +++ b/addons/shaderV/rgba/noise/simplex3d.gd @@ -126,5 +126,10 @@ float simplex3dN0iseFunc(vec3 v) { } """ func _get_code(input_vars: Array, output_vars: Array, mode: int, type: int) -> String: + var uv = "UV" + + if input_vars[0]: + uv = input_vars[0] + return "%s = simplex3dN0iseFunc(vec3((%s.xy + %s.xy) * %s, %s));" % [ -output_vars[0], input_vars[0], input_vars[1], input_vars[2], input_vars[3]] +output_vars[0], uv, input_vars[1], input_vars[2], input_vars[3]] diff --git a/addons/shaderV/rgba/noise/simplex4d.gd b/addons/shaderV/rgba/noise/simplex4d.gd index 5829f5c..3ff1237 100644 --- a/addons/shaderV/rgba/noise/simplex4d.gd +++ b/addons/shaderV/rgba/noise/simplex4d.gd @@ -142,5 +142,10 @@ float simplex4dN0iseFunc(vec4 v) { } """ func _get_code(input_vars: Array, output_vars: Array, mode: int, type: int) -> String: + var uv = "UV" + + if input_vars[0]: + uv = input_vars[0] + return "%s = simplex4dN0iseFunc(vec4((%s.xy + %s.xy) * %s, %s, %s));" % [ -output_vars[0], input_vars[0], input_vars[1], input_vars[2], input_vars[3], input_vars[4]] +output_vars[0], uv, input_vars[1], input_vars[2], input_vars[3], input_vars[4]] diff --git a/addons/shaderV/rgba/noise/worley2d.gd b/addons/shaderV/rgba/noise/worley2d.gd index 9ee354e..f75ce42 100644 --- a/addons/shaderV/rgba/noise/worley2d.gd +++ b/addons/shaderV/rgba/noise/worley2d.gd @@ -108,9 +108,14 @@ vec2 cellular2dNoiseFunc(vec2 P, float _jitter_w2d) { """ func _get_code(input_vars: Array, output_vars: Array, mode: int, type: int) -> String: + var uv = "UV" + + if input_vars[0]: + uv = input_vars[0] + return """vec2 %s%s = cellular2dNoiseFunc((%s.xy+%s.xy)*%s, min(max(%s, 0.0), 1.0)); %s = %s%s.x; %s = %s%s.y;""" % [ -output_vars[0], output_vars[1], input_vars[0], input_vars[1], input_vars[2], input_vars[3], +output_vars[0], output_vars[1], uv, input_vars[1], input_vars[2], input_vars[3], output_vars[0], output_vars[0], output_vars[1], output_vars[1], output_vars[0], output_vars[1]] diff --git a/addons/shaderV/rgba/noise/worley2x2.gd b/addons/shaderV/rgba/noise/worley2x2.gd index 6f0c818..fdc57af 100644 --- a/addons/shaderV/rgba/noise/worley2x2.gd +++ b/addons/shaderV/rgba/noise/worley2x2.gd @@ -80,5 +80,10 @@ float cellular2x2NoiseFunc(vec2 P, float _jitter_w2x2) { """ func _get_code(input_vars: Array, output_vars: Array, mode: int, type: int) -> String: + var uv = "UV" + + if input_vars[0]: + uv = input_vars[0] + return "%s = cellular2x2NoiseFunc((%s.xy+%s.xy)*%s, min(max(%s, 0.0), 1.0));" % [ -output_vars[0], input_vars[0], input_vars[1], input_vars[2], input_vars[3]] +output_vars[0], uv, input_vars[1], input_vars[2], input_vars[3]] diff --git a/addons/shaderV/rgba/noise/worley2x2x2.gd b/addons/shaderV/rgba/noise/worley2x2x2.gd index 0ed67ea..8b3f686 100644 --- a/addons/shaderV/rgba/noise/worley2x2x2.gd +++ b/addons/shaderV/rgba/noise/worley2x2x2.gd @@ -100,5 +100,10 @@ float cellular2x2x2NoiseFunc(vec3 P, float _jitter_w2x2x2) { """ func _get_code(input_vars: Array, output_vars: Array, mode: int, type: int) -> String: + var uv = "UV" + + if input_vars[0]: + uv = input_vars[0] + return "%s = cellular2x2x2NoiseFunc(vec3((%s.xy + %s.xy) * %s, %s), min(max(%s, 0.0), 1.0));" % [ -output_vars[0], input_vars[0], input_vars[1], input_vars[2], input_vars[4], input_vars[3]] +output_vars[0], uv, input_vars[1], input_vars[2], input_vars[4], input_vars[3]] diff --git a/addons/shaderV/rgba/noise/worley3d.gd b/addons/shaderV/rgba/noise/worley3d.gd index 2c3beea..36dd3ae 100644 --- a/addons/shaderV/rgba/noise/worley3d.gd +++ b/addons/shaderV/rgba/noise/worley3d.gd @@ -218,9 +218,14 @@ vec2 cellular3dNoiseFunc(vec3 P, float _jitter_w3d) { """ func _get_code(input_vars: Array, output_vars: Array, mode: int, type: int) -> String: + var uv = "UV" + + if input_vars[0]: + uv = input_vars[0] + return """vec2 %s%s = cellular3dNoiseFunc(vec3((%s.xy+%s.xy)*%s, %s), min(max(%s, 0.0), 1.0)); %s = %s%s.x; %s = %s%s.y;""" % [ -output_vars[0], output_vars[1], input_vars[0], input_vars[1], input_vars[2], input_vars[4], input_vars[3], +output_vars[0], output_vars[1], uv, input_vars[1], input_vars[2], input_vars[4], input_vars[3], output_vars[0], output_vars[0], output_vars[1], output_vars[1], output_vars[0], output_vars[1]] diff --git a/addons/shaderV/rgba/normalFromHeightmap.gd b/addons/shaderV/rgba/normalFromHeightmap.gd index c2f119a..fb96c82 100644 --- a/addons/shaderV/rgba/normalFromHeightmap.gd +++ b/addons/shaderV/rgba/normalFromHeightmap.gd @@ -98,5 +98,13 @@ vec3 normalFromHeightmapFunc(vec2 _hm_uv, sampler2D _hm_tex, vec2 _hm_size, floa """ func _get_code(input_vars: Array, output_vars: Array, mode: int, type: int) -> String: + var texture = "TEXTURE" + var uv = "UV" + + if input_vars[0]: + texture = input_vars[0] + if input_vars[1]: + uv = input_vars[1] + return "%s = normalFromHeightmapFunc(%s.xy, %s, %s.xy, %s, %s, %s, %s);" % [ -output_vars[0], input_vars[1], input_vars[0], input_vars[2], input_vars[3], input_vars[4], input_vars[5], input_vars[6]] +output_vars[0], uv, texture, input_vars[2], input_vars[3], input_vars[4], input_vars[5], input_vars[6]] diff --git a/addons/shaderV/rgba/shineFX.gd b/addons/shaderV/rgba/shineFX.gd index 21ede00..d6b2261 100644 --- a/addons/shaderV/rgba/shineFX.gd +++ b/addons/shaderV/rgba/shineFX.gd @@ -106,8 +106,13 @@ vec4 shineFunc(vec4 _color_sh1ne, vec2 _uv_sh1ne, float _loc_sh1ne, float _rot_s """ func _get_code(input_vars: Array, output_vars: Array, mode: int, type: int) -> String: + var uv = "UV" + + if input_vars[0]: + uv = input_vars[0] + return """%s = %s; %s = shineFunc(vec4(%s, %s), %s.xy, %s, %s, %s, %s, %s, %s, %s).rgb;""" % [ output_vars[1], input_vars[2], -output_vars[0], input_vars[1], input_vars[2], input_vars[0], input_vars[3], input_vars[4], +output_vars[0], input_vars[1], input_vars[2], uv, input_vars[3], input_vars[4], input_vars[5], input_vars[6], input_vars[7], input_vars[8], input_vars[9]] diff --git a/addons/shaderV/rgba/sobelEdge.gd b/addons/shaderV/rgba/sobelEdge.gd index c81ccdf..bac01de 100644 --- a/addons/shaderV/rgba/sobelEdge.gd +++ b/addons/shaderV/rgba/sobelEdge.gd @@ -122,5 +122,13 @@ float sobelEngeFunc(sampler2D _tex_sobel, vec2 _uv_sobel, float _lod_sobel, floa """ func _get_code(input_vars: Array, output_vars: Array, mode: int, type: int) -> String: + var texture = "TEXTURE" + var uv = "UV" + + if input_vars[0]: + texture = input_vars[0] + if input_vars[1]: + uv = input_vars[1] + return "%s = sobelEngeFunc(%s, %s.xy, %s, %s, %s, %s);" % [ -output_vars[0], input_vars[0], input_vars[1], input_vars[2], input_vars[3], input_vars[4], input_vars[5]] +output_vars[0], texture, uv, input_vars[2], input_vars[3], input_vars[4], input_vars[5]] diff --git a/addons/shaderV/tools/random/randomFloat.gd b/addons/shaderV/tools/random/randomFloat.gd index 082d98b..c7ce9a7 100644 --- a/addons/shaderV/tools/random/randomFloat.gd +++ b/addons/shaderV/tools/random/randomFloat.gd @@ -2,6 +2,9 @@ tool extends VisualShaderNodeCustom class_name VisualShaderToolsRandomFloat +func _init() -> void: + pass + func _get_name() -> String: return "RandomFloat" @@ -12,22 +15,33 @@ func _get_subcategory() -> String: return "Random" func _get_description() -> String: - return "Returns random float based on UV" + return "Returns random float based on input value. UV is default input value." func _get_return_icon_type() -> int: return VisualShaderNode.PORT_TYPE_SCALAR func _get_input_port_count() -> int: - return 0 + return 1 + +func _get_input_port_name(port: int) -> String: + return "in" + +func _get_input_port_type(port: int) -> int: + return VisualShaderNode.PORT_TYPE_VECTOR func _get_output_port_count() -> int: return 1 func _get_output_port_name(port: int) -> String: - return "random" + return "rand" func _get_output_port_type(port: int) -> int: return VisualShaderNode.PORT_TYPE_SCALAR func _get_code(input_vars: Array, output_vars: Array, mode: int, type: int) -> String: - return output_vars[0] + " = fract(sin(dot(UV, vec2(12.9898, 78.233))) * 43758.5453123);" + var uv = "UV" + + if input_vars[0]: + uv = input_vars[0] + + return output_vars[0] + " = fract(sin(dot(%s.xy, vec2(12.9898, 78.233))) * 43758.5453123);" % uv diff --git a/addons/shaderV/tools/random/randomFloat_I.gd b/addons/shaderV/tools/random/randomFloatImproved.gd similarity index 89% rename from addons/shaderV/tools/random/randomFloat_I.gd rename to addons/shaderV/tools/random/randomFloatImproved.gd index 63fb9c3..0daf022 100644 --- a/addons/shaderV/tools/random/randomFloat_I.gd +++ b/addons/shaderV/tools/random/randomFloatImproved.gd @@ -1,13 +1,13 @@ tool extends VisualShaderNodeCustom -class_name VisualShaderToolsRandomFloat_I +class_name VisualShaderToolsRandomFloatImproved func _init() -> void: set_input_port_default_value(1, 1.0) set_input_port_default_value(2, Vector3(0.0, 0.0, 0.0)) func _get_name() -> String: - return "RandomFloat_I" + return "RandomFloatImproved" func _get_category() -> String: return "Tools" @@ -64,5 +64,10 @@ highp float randImpr0vedFunc(vec2 _c0_rnd){ """ func _get_code(input_vars: Array, output_vars: Array, mode: int, type: int) -> String: + var uv = "UV" + + if input_vars[0]: + uv = input_vars[0] + return "%s = randImpr0vedFunc(%s.xy * %s + %s.xy);" % [ -output_vars[0], input_vars[0], input_vars[1], input_vars[2]] +output_vars[0], uv, input_vars[1], input_vars[2]] diff --git a/addons/shaderV/tools/random/randomFloatInput.gd b/addons/shaderV/tools/random/randomFloatInput.gd deleted file mode 100644 index a5cdfd5..0000000 --- a/addons/shaderV/tools/random/randomFloatInput.gd +++ /dev/null @@ -1,42 +0,0 @@ -tool -extends VisualShaderNodeCustom -class_name VisualShaderToolsRandomFloatInput - -func _init() -> void: - set_input_port_default_value(0, Vector3(0, 0, 0)) - -func _get_name() -> String: - return "RandomFloatInput" - -func _get_category() -> String: - return "Tools" - -func _get_subcategory() -> String: - return "Random" - -func _get_description() -> String: - return "Returns random float based on input value" - -func _get_return_icon_type() -> int: - return VisualShaderNode.PORT_TYPE_SCALAR - -func _get_input_port_count() -> int: - return 1 - -func _get_input_port_name(port: int) -> String: - return "in" - -func _get_input_port_type(port: int) -> int: - return VisualShaderNode.PORT_TYPE_VECTOR - -func _get_output_port_count() -> int: - return 1 - -func _get_output_port_name(port: int) -> String: - return "rand" - -func _get_output_port_type(port: int) -> int: - return VisualShaderNode.PORT_TYPE_SCALAR - -func _get_code(input_vars: Array, output_vars: Array, mode: int, type: int) -> String: - return output_vars[0] + " = fract(sin(dot(%s.xy, vec2(12.9898, 78.233))) * 43758.5453123);" % input_vars[0] diff --git a/addons/shaderV/tools/remap.gd b/addons/shaderV/tools/remap.gd index ffd40cf..d686616 100644 --- a/addons/shaderV/tools/remap.gd +++ b/addons/shaderV/tools/remap.gd @@ -18,7 +18,7 @@ func _get_category() -> String: # return "" func _get_description() -> String: - return "Remaps input value from ( [inMin], [inMax] ) range to ( [outMin], [outMax] )" + return "Remaps input value from ( [inMin], [inMax] ) range to ( [outMin], [outMax] ). UV is default input value." func _get_return_icon_type() -> int: return VisualShaderNode.PORT_TYPE_VECTOR @@ -70,8 +70,13 @@ vec3 remapFunc(vec3 _inpt_r4p, vec2 _fr0m_r4p, vec2 _t0_r4p){ """ func _get_code(input_vars: Array, output_vars: Array, mode: int, type: int) -> String: + var uv = "UV" + + if input_vars[0]: + uv = input_vars[0] + return output_vars[0] + " = remapFunc(%s, vec2(%s, %s), vec2(%s, %s));" % [ - input_vars[0], input_vars[1], input_vars[2], input_vars[3], input_vars[4]] + uv, input_vars[1], input_vars[2], input_vars[3], input_vars[4]] diff --git a/addons/shaderV/tools/transformCoordinates/cartesianToPolar.gd b/addons/shaderV/tools/transformCoordinates/cartesianToPolar.gd index 75c4c07..24f08f6 100644 --- a/addons/shaderV/tools/transformCoordinates/cartesianToPolar.gd +++ b/addons/shaderV/tools/transformCoordinates/cartesianToPolar.gd @@ -15,7 +15,7 @@ func _get_subcategory(): return "TransformCoordinates" func _get_description() -> String: - return "Cartesian (x, y) -> Polar (r, theta)" + return "Cartesian (x, y) -> Polar (r, theta). By default (x, y) is UV." func _get_return_icon_type() -> int: return VisualShaderNode.PORT_TYPE_VECTOR @@ -49,5 +49,10 @@ vec2 cartesianToPolarFunc(vec2 _cartesian_vec2){ """ func _get_code(input_vars: Array, output_vars: Array, mode: int, type: int) -> String: - return "%s.xy = cartesianToPolarFunc(%s.xy);" % [output_vars[0], input_vars[0]] + var uv = "UV" + + if input_vars[0]: + uv = input_vars[0] + + return "%s.xy = cartesianToPolarFunc(%s.xy);" % [output_vars[0], uv] diff --git a/addons/shaderV/tools/transformCoordinates/cartesianToSpherical.gd b/addons/shaderV/tools/transformCoordinates/cartesianToSpherical.gd index f1df9da..e9018ae 100644 --- a/addons/shaderV/tools/transformCoordinates/cartesianToSpherical.gd +++ b/addons/shaderV/tools/transformCoordinates/cartesianToSpherical.gd @@ -15,7 +15,7 @@ func _get_subcategory(): return "TransformCoordinates" func _get_description() -> String: - return "Cartesian (x, y, z) -> Spherical (r, theta, phi)" + return "Cartesian (x, y, z) -> Spherical (r, theta, phi). By default (x, y, z) is UV." func _get_return_icon_type() -> int: return VisualShaderNode.PORT_TYPE_VECTOR @@ -50,5 +50,10 @@ vec3 cartesianToSphericalFunc(vec3 _cartesian_vec3){ """ func _get_code(input_vars: Array, output_vars: Array, mode: int, type: int) -> String: - return "%s = cartesianToSphericalFunc(%s);" % [output_vars[0], input_vars[0]] + var uv = "UV" + + if input_vars[0]: + uv = input_vars[0] + + return "%s = cartesianToSphericalFunc(%s);" % [output_vars[0], uv] diff --git a/addons/shaderV/uv/animated/distortionUVAnimated.gd b/addons/shaderV/uv/animated/distortionUVAnimated.gd index f668cbf..36cb3d8 100644 --- a/addons/shaderV/uv/animated/distortionUVAnimated.gd +++ b/addons/shaderV/uv/animated/distortionUVAnimated.gd @@ -81,5 +81,10 @@ vec2 d1stort1onUVAnimatedFunc(vec2 _uv_d1st, float _d1stX_d1st, float _d1stY_d1s """ func _get_code(input_vars: Array, output_vars: Array, mode: int, type: int) -> String: + var uv = "UV" + + if input_vars[0]: + uv = input_vars[0] + return "%s.xy = d1stort1onUVAnimatedFunc(%s.xy, %s, %s, %s, %s, %s, %s);" % [ - output_vars[0], input_vars[0], input_vars[3], input_vars[4], input_vars[1], input_vars[2], input_vars[5], input_vars[6]] + output_vars[0], uv, input_vars[3], input_vars[4], input_vars[1], input_vars[2], input_vars[5], input_vars[6]] diff --git a/addons/shaderV/uv/animated/doodleUV.gd b/addons/shaderV/uv/animated/doodleUV.gd index 90e399d..6965b63 100644 --- a/addons/shaderV/uv/animated/doodleUV.gd +++ b/addons/shaderV/uv/animated/doodleUV.gd @@ -90,5 +90,10 @@ vec2 d00dleUVFunc(vec2 _uv_d00dle, float _max_offset_d00dle, float _time_d00dle, """ func _get_code(input_vars: Array, output_vars: Array, mode: int, type: int) -> String: + var uv = "UV" + + if input_vars[0]: + uv = input_vars[0] + return "%s.xy = d00dleUVFunc(%s.xy, %s, %s, %s, int(%s), %s);" % [ - output_vars[0], input_vars[0], input_vars[4], input_vars[5], input_vars[1], input_vars[2], input_vars[3]] + output_vars[0], uv, input_vars[4], input_vars[5], input_vars[1], input_vars[2], input_vars[3]] diff --git a/addons/shaderV/uv/animated/rotateAnimated.gd b/addons/shaderV/uv/animated/rotateAnimated.gd index 612d5f1..8f95f82 100644 --- a/addons/shaderV/uv/animated/rotateAnimated.gd +++ b/addons/shaderV/uv/animated/rotateAnimated.gd @@ -70,5 +70,10 @@ vec2 r0tateUVAnimatedFunc(vec2 _uv_r0tate, vec2 _pivot_r0tate, float _r0tation_r """ func _get_code(input_vars: Array, output_vars: Array, mode: int, type: int) -> String: + var uv = "UV" + + if input_vars[0]: + uv = input_vars[0] + return output_vars[0] + " = vec3(r0tateUVAnimatedFunc(%s.xy, %s.xy, 0.0, %s, %s), 0);" % [ - input_vars[0], input_vars[2], input_vars[1], input_vars[3]] + uv, input_vars[2], input_vars[1], input_vars[3]] diff --git a/addons/shaderV/uv/animated/swirlUV.gd b/addons/shaderV/uv/animated/swirlUV.gd index 1ee0fbe..a1de12c 100644 --- a/addons/shaderV/uv/animated/swirlUV.gd +++ b/addons/shaderV/uv/animated/swirlUV.gd @@ -69,5 +69,10 @@ vec2 swirlUVFunc(vec2 _uv_sw1rl, float _t1me_sw1rl, vec2 _p1vot_sw1rl, float _am """ func _get_code(input_vars: Array, output_vars: Array, mode: int, type: int) -> String: + var uv = "UV" + + if input_vars[0]: + uv = input_vars[0] + return "%s.xy = swirlUVFunc(%s.xy, %s, %s.xy, %s);" % [ - output_vars[0], input_vars[0], input_vars[3], input_vars[1], input_vars[2]] + output_vars[0], uv, input_vars[3], input_vars[1], input_vars[2]] diff --git a/addons/shaderV/uv/animated/tilingNoffsetAnimated.gd b/addons/shaderV/uv/animated/tilingNoffsetAnimated.gd index 563e216..dff2fb8 100644 --- a/addons/shaderV/uv/animated/tilingNoffsetAnimated.gd +++ b/addons/shaderV/uv/animated/tilingNoffsetAnimated.gd @@ -59,5 +59,10 @@ vec2 tilingNoffsetAnimatedFunc(vec2 _uv_tN0A, float _t1me_tN0A, vec2 _offset_tN0 """ func _get_code(input_vars: Array, output_vars: Array, mode: int, type: int) -> String: + var uv = "UV" + + if input_vars[0]: + uv = input_vars[0] + return "%s.xy = %s.xy + tilingNoffsetAnimatedFunc(%s.xy, %s, %s.xy);" % [ -output_vars[0], output_vars[0], input_vars[0], input_vars[2], input_vars[1]] +output_vars[0], output_vars[0], uv, input_vars[2], input_vars[1]] diff --git a/addons/shaderV/uv/distortionUV.gd b/addons/shaderV/uv/distortionUV.gd index 1a5a93b..731730f 100644 --- a/addons/shaderV/uv/distortionUV.gd +++ b/addons/shaderV/uv/distortionUV.gd @@ -71,5 +71,10 @@ vec2 d1stort1onUVFunc(vec2 _uv_d1st, float _d1stX_d1st, float _d1stY_d1st, float """ func _get_code(input_vars: Array, output_vars: Array, mode: int, type: int) -> String: + var uv = "UV" + + if input_vars[0]: + uv = input_vars[0] + return "%s.xy = d1stort1onUVFunc(%s.xy, %s, %s, %s, %s);" % [ - output_vars[0], input_vars[0], input_vars[3], input_vars[4], input_vars[1], input_vars[2]] + output_vars[0], uv, input_vars[3], input_vars[4], input_vars[1], input_vars[2]] diff --git a/addons/shaderV/uv/flipUV.gd b/addons/shaderV/uv/flipUV.gd index 4642db2..f2e788c 100644 --- a/addons/shaderV/uv/flipUV.gd +++ b/addons/shaderV/uv/flipUV.gd @@ -52,5 +52,10 @@ func _get_output_port_type(port: int) -> int: return VisualShaderNode.PORT_TYPE_VECTOR func _get_code(input_vars: Array, output_vars: Array, mode: int, type: int) -> String: + var uv = "UV" + + if input_vars[0]: + uv = input_vars[0] + return output_vars[0] + " = vec3(mix(%s.x, 1.0 - %s.x, float(%s)), mix(%s.y, 1.0 - %s.y, float(%s)), 0);" % [ - input_vars[0], input_vars[0], input_vars[1], input_vars[0], input_vars[0], input_vars[2]] + uv, uv, input_vars[1], uv, uv, input_vars[2]] diff --git a/addons/shaderV/uv/lensDistortion.gd b/addons/shaderV/uv/lensDistortion.gd index 0fdec19..2252778 100644 --- a/addons/shaderV/uv/lensDistortion.gd +++ b/addons/shaderV/uv/lensDistortion.gd @@ -62,4 +62,9 @@ vec2 lensD1st0rti0nFunc(vec2 _uv_d1s_1en5, float _fctr_d1s_1en5){ """ func _get_code(input_vars: Array, output_vars: Array, mode: int, type: int) -> String: - return "%s.xy = lensD1st0rti0nFunc(%s.xy, %s);" % [output_vars[0], input_vars[0], input_vars[1]] + var uv = "UV" + + if input_vars[0]: + uv = input_vars[0] + + return "%s.xy = lensD1st0rti0nFunc(%s.xy, %s);" % [output_vars[0], uv, input_vars[1]] diff --git a/addons/shaderV/uv/pixelate.gd b/addons/shaderV/uv/pixelate.gd index e19f3d7..30ade64 100644 --- a/addons/shaderV/uv/pixelate.gd +++ b/addons/shaderV/uv/pixelate.gd @@ -55,4 +55,9 @@ vec2 pixelateFunc(vec2 _uv_p1xelate, vec2 _effect_factor_p1xelate){ """ func _get_code(input_vars: Array, output_vars: Array, mode: int, type: int) -> String: - return "%s.xy = pixelateFunc(%s.xy, %s.xy);" % [output_vars[0], input_vars[0], input_vars[1]] + var uv = "UV" + + if input_vars[0]: + uv = input_vars[0] + + return "%s.xy = pixelateFunc(%s.xy, %s.xy);" % [output_vars[0], uv, input_vars[1]] diff --git a/addons/shaderV/uv/rotate.gd b/addons/shaderV/uv/rotate.gd index 1a8673a..11dd083 100644 --- a/addons/shaderV/uv/rotate.gd +++ b/addons/shaderV/uv/rotate.gd @@ -64,4 +64,9 @@ vec3 r0tateUVFunc(vec3 _uv_r0tate, vec2 _pivot_r0tate, float _r0tation_r0tate){ """ func _get_code(input_vars: Array, output_vars: Array, mode: int, type: int) -> String: - return output_vars[0] + " = r0tateUVFunc(%s, %s.xy, %s);" % [input_vars[0], input_vars[2], input_vars[1]] + var uv = "UV" + + if input_vars[0]: + uv = input_vars[0] + + return output_vars[0] + " = r0tateUVFunc(%s, %s.xy, %s);" % [uv, input_vars[2], input_vars[1]] diff --git a/addons/shaderV/uv/scaleUV.gd b/addons/shaderV/uv/scaleUV.gd index 0d83aa7..7c76ac7 100644 --- a/addons/shaderV/uv/scaleUV.gd +++ b/addons/shaderV/uv/scaleUV.gd @@ -52,5 +52,10 @@ func _get_output_port_type(port: int) -> int: return VisualShaderNode.PORT_TYPE_VECTOR func _get_code(input_vars: Array, output_vars: Array, mode: int, type: int) -> String: + var uv = "UV" + + if input_vars[0]: + uv = input_vars[0] + return "%s.xy = (%s.xy - %s.xy) * %s.xy + %s.xy;" % [ - output_vars[0], input_vars[0], input_vars[2], input_vars[1], input_vars[2]] + output_vars[0], uv, input_vars[2], input_vars[1], input_vars[2]] diff --git a/addons/shaderV/uv/sphericalUV.gd b/addons/shaderV/uv/sphericalUV.gd index cfb7df9..e051d69 100644 --- a/addons/shaderV/uv/sphericalUV.gd +++ b/addons/shaderV/uv/sphericalUV.gd @@ -73,5 +73,10 @@ vec2 sphericalFunc(vec2 _uv_shprc1, vec2 _p0s_shprc1, vec2 _rad_shprc1, vec2 _sp """ func _get_code(input_vars: Array, output_vars: Array, mode: int, type: int) -> String: + var uv = "UV" + + if input_vars[0]: + uv = input_vars[0] + return "%s.xy = sphericalFunc(%s.xy, %s.xy, %s.xy, %s.xy, %s.xy);" % [ -output_vars[0], input_vars[0], input_vars[3], input_vars[1], input_vars[2], input_vars[4]] +output_vars[0], uv, input_vars[3], input_vars[1], input_vars[2], input_vars[4]] diff --git a/addons/shaderV/uv/tileUV.gd b/addons/shaderV/uv/tileUV.gd index 04ae921..fe641b7 100644 --- a/addons/shaderV/uv/tileUV.gd +++ b/addons/shaderV/uv/tileUV.gd @@ -72,5 +72,10 @@ vec2 t1leMapUV(vec2 _uv_t1le_t1mp, float _w1dth_t1mp, float _he1ght_t1mp, float """ func _get_code(input_vars: Array, output_vars: Array, mode: int, type: int) -> String: + var uv = "UV" + + if input_vars[0]: + uv = input_vars[0] + return "%s.xy = t1leMapUV(%s.xy, %s, %s, %s);" % [ -output_vars[0], input_vars[0], input_vars[1], input_vars[2], input_vars[3]] +output_vars[0], uv, input_vars[1], input_vars[2], input_vars[3]] diff --git a/addons/shaderV/uv/tilingNoffset.gd b/addons/shaderV/uv/tilingNoffset.gd index ad52b66..e3e831e 100644 --- a/addons/shaderV/uv/tilingNoffset.gd +++ b/addons/shaderV/uv/tilingNoffset.gd @@ -54,4 +54,9 @@ vec2 ti1ingN0ffsetFunc(vec2 _uv_tN0, vec2 _offset_tN0){ """ func _get_code(input_vars: Array, output_vars: Array, mode: int, type: int) -> String: - return output_vars[0] + " = vec3(ti1ingN0ffsetFunc(%s.xy, %s.xy), 0);" % [input_vars[0], input_vars[1]] + var uv = "UV" + + if input_vars[0]: + uv = input_vars[0] + + return output_vars[0] + " = vec3(ti1ingN0ffsetFunc(%s.xy, %s.xy), 0);" % [uv, input_vars[1]] diff --git a/addons/shaderV/uv/transformUV.gd b/addons/shaderV/uv/transformUV.gd index 53be56f..34a99ee 100644 --- a/addons/shaderV/uv/transformUV.gd +++ b/addons/shaderV/uv/transformUV.gd @@ -79,5 +79,10 @@ vec2 transformUVFunc(vec2 _uv_transform, vec2 _scale_uv_, vec2 _pivot_scale_uv_, """ func _get_code(input_vars: Array, output_vars: Array, mode: int, type: int) -> String: + var uv = "UV" + + if input_vars[0]: + uv = input_vars[0] + return "%s.xy = transformUVFunc(%s.xy, %s.xy, %s.xy, %s.xy, %s, %s.xy);" % [ -output_vars[0], input_vars[0], input_vars[2], input_vars[3], input_vars[1], input_vars[4], input_vars[5]] +output_vars[0], uv, input_vars[2], input_vars[3], input_vars[1], input_vars[4], input_vars[5]] diff --git a/addons/shaderV/uv/twirl.gd b/addons/shaderV/uv/twirl.gd index a6cc78b..867a379 100644 --- a/addons/shaderV/uv/twirl.gd +++ b/addons/shaderV/uv/twirl.gd @@ -63,4 +63,9 @@ vec3 twirlUVFunc(vec2 _uv_twirlUVFunc, vec2 _pivot_twirlUVFunc, float _amount_tw """ func _get_code(input_vars: Array, output_vars: Array, mode: int, type: int) -> String: - return output_vars[0] + " = twirlUVFunc(%s.xy, %s.xy, %s);" % [input_vars[0], input_vars[2], input_vars[1]] + var uv = "UV" + + if input_vars[0]: + uv = input_vars[0] + + return output_vars[0] + " = twirlUVFunc(%s.xy, %s.xy, %s);" % [uv, input_vars[2], input_vars[1]]