Godot4ShadersPlayground/BlurNoise.tres

132 lines
5.8 KiB
Plaintext

[gd_resource type="VisualShader" load_steps=12 format=3 uid="uid://ulljr4hxdmvr"]
[sub_resource type="FastNoiseLite" id="FastNoiseLite_w3o50"]
seed = 666
[sub_resource type="NoiseTexture2D" id="NoiseTexture2D_5i62n"]
noise = SubResource("FastNoiseLite_w3o50")
[sub_resource type="VisualShaderNodeTexture" id="VisualShaderNodeTexture_p0ff0"]
output_port_for_preview = 0
texture = SubResource("NoiseTexture2D_5i62n")
[sub_resource type="VisualShaderNodeVec3Constant" id="VisualShaderNodeVec3Constant_3q5bf"]
constant = Vector3(1, 1, 1)
[sub_resource type="VisualShaderNodeVec3Constant" id="VisualShaderNodeVec3Constant_t0a48"]
[sub_resource type="VisualShaderNodeTexture2DParameter" id="VisualShaderNodeTexture2DParameter_ii6y5"]
parameter_name = "Texture2DParameter"
[sub_resource type="VisualShaderNodeExpression" id="VisualShaderNodeExpression_by0vp"]
size = Vector2(916.9, 484.033)
expression = "vec3 pixel0 = step(step_comparator, texture(sampler, uv.xy + vec2(-step, -step)).xyz);
vec3 pixel1 = step(step_comparator, texture(sampler, uv.xy + vec2(-step, 0)).xyz);
vec3 pixel2 = step(step_comparator, texture(sampler, uv.xy + vec2(-step, step)).xyz);
vec3 pixel3 = step(step_comparator, texture(sampler, uv.xy + vec2(0, -step)).xyz);
vec3 pixel4 = step(step_comparator, texture(sampler, uv.xy + vec2(0, 0)).xyz);
vec3 pixel5 = step(step_comparator, texture(sampler, uv.xy + vec2(0, +step)).xyz);
vec3 pixel6 = step(step_comparator, texture(sampler, uv.xy + vec2(step, -step)).xyz);
vec3 pixel7 = step(step_comparator, texture(sampler, uv.xy + vec2(step, 0)).xyz);
vec3 pixel8 = step(step_comparator, texture(sampler, uv.xy + vec2(step, step)).xyz);
albedo = (pixel0 + pixel1 + pixel2 + pixel3 + pixel4 + pixel5 + pixel6 + pixel7 + pixel8) / vec3(9, 9, 9);
"
[sub_resource type="VisualShaderNodeInput" id="VisualShaderNodeInput_j8b80"]
input_name = "uv"
[sub_resource type="VisualShaderNodeFloatConstant" id="VisualShaderNodeFloatConstant_rnhgr"]
constant = 0.007
[sub_resource type="VisualShaderNodeVec3Constant" id="VisualShaderNodeVec3Constant_v76ww"]
constant = Vector3(0.8, 0.8, 0.8)
[sub_resource type="VisualShaderNodeExpression" id="VisualShaderNodeExpression_ddc37"]
output_port_for_preview = 0
size = Vector2(844.92, 505.52)
expression = "// Scale, and clamp x to 0..1 range
vec3 x = clamp((input0 - minimum) / (maximum - minimum), 0.0, 1.0);
// Evaluate polynomial
output0 = x * x * x * (x * (x * vec3(6) - vec3(15)) + vec3(10));"
[resource]
code = "shader_type spatial;
uniform sampler2D tex_frg_10;
void fragment() {
// Texture2D:10
vec4 n_out10p0 = texture(tex_frg_10, UV);
// Vector3Constant:11
vec3 n_out11p0 = vec3(1.000000, 1.000000, 1.000000);
// Vector3Constant:12
vec3 n_out12p0 = vec3(0.000000, 0.000000, 0.000000);
vec3 n_out9p0;
// Expression:9
n_out9p0 = vec3(0.0, 0.0, 0.0);
{
// Scale, and clamp x to 0..1 range
vec3 x = clamp((vec3(n_out10p0.xyz) - n_out12p0) / (n_out11p0 - n_out12p0), 0.0, 1.0);
// Evaluate polynomial
n_out9p0 = x * x * x * (x * (x * vec3(6) - vec3(15)) + vec3(10));
}
// Output:0
ALBEDO = n_out9p0;
}
"
graph_offset = Vector2(-957.583, 126.888)
nodes/fragment/0/position = Vector2(880, 120)
nodes/fragment/2/node = SubResource("VisualShaderNodeTexture2DParameter_ii6y5")
nodes/fragment/2/position = Vector2(-540, 120)
nodes/fragment/3/node = SubResource("VisualShaderNodeExpression_by0vp")
nodes/fragment/3/position = Vector2(-140, 120)
nodes/fragment/3/size = Vector2(916.9, 484.033)
nodes/fragment/3/input_ports = "0,7,sampler;1,3,uv;2,0,step;3,3,step_comparator;"
nodes/fragment/3/output_ports = "0,3,albedo;"
nodes/fragment/3/expression = "vec3 pixel0 = step(step_comparator, texture(sampler, uv.xy + vec2(-step, -step)).xyz);
vec3 pixel1 = step(step_comparator, texture(sampler, uv.xy + vec2(-step, 0)).xyz);
vec3 pixel2 = step(step_comparator, texture(sampler, uv.xy + vec2(-step, step)).xyz);
vec3 pixel3 = step(step_comparator, texture(sampler, uv.xy + vec2(0, -step)).xyz);
vec3 pixel4 = step(step_comparator, texture(sampler, uv.xy + vec2(0, 0)).xyz);
vec3 pixel5 = step(step_comparator, texture(sampler, uv.xy + vec2(0, +step)).xyz);
vec3 pixel6 = step(step_comparator, texture(sampler, uv.xy + vec2(step, -step)).xyz);
vec3 pixel7 = step(step_comparator, texture(sampler, uv.xy + vec2(step, 0)).xyz);
vec3 pixel8 = step(step_comparator, texture(sampler, uv.xy + vec2(step, step)).xyz);
albedo = (pixel0 + pixel1 + pixel2 + pixel3 + pixel4 + pixel5 + pixel6 + pixel7 + pixel8) / vec3(9, 9, 9);
"
nodes/fragment/6/node = SubResource("VisualShaderNodeInput_j8b80")
nodes/fragment/6/position = Vector2(-540, 400)
nodes/fragment/7/node = SubResource("VisualShaderNodeFloatConstant_rnhgr")
nodes/fragment/7/position = Vector2(-400, 500)
nodes/fragment/8/node = SubResource("VisualShaderNodeVec3Constant_v76ww")
nodes/fragment/8/position = Vector2(-560, 580)
nodes/fragment/9/node = SubResource("VisualShaderNodeExpression_ddc37")
nodes/fragment/9/position = Vector2(-100, 720)
nodes/fragment/9/size = Vector2(844.92, 505.52)
nodes/fragment/9/input_ports = "0,3,input0;1,3,maximum;2,3,minimum;"
nodes/fragment/9/output_ports = "0,3,output0;"
nodes/fragment/9/expression = "// Scale, and clamp x to 0..1 range
vec3 x = clamp((input0 - minimum) / (maximum - minimum), 0.0, 1.0);
// Evaluate polynomial
output0 = x * x * x * (x * (x * vec3(6) - vec3(15)) + vec3(10));"
nodes/fragment/10/node = SubResource("VisualShaderNodeTexture_p0ff0")
nodes/fragment/10/position = Vector2(-760, 720)
nodes/fragment/11/node = SubResource("VisualShaderNodeVec3Constant_3q5bf")
nodes/fragment/11/position = Vector2(-520, 1000)
nodes/fragment/12/node = SubResource("VisualShaderNodeVec3Constant_t0a48")
nodes/fragment/12/position = Vector2(-520, 1100)
nodes/fragment/connections = PackedInt32Array(2, 0, 3, 0, 6, 0, 3, 1, 7, 0, 3, 2, 8, 0, 3, 3, 10, 0, 9, 0, 9, 0, 0, 0, 11, 0, 9, 1, 12, 0, 9, 2)