[gd_resource type="VisualShader" load_steps=22 format=3 uid="uid://dewwedodqpjub"]

[ext_resource type="Texture2D" uid="uid://c7g1lervup6pt" path="res://3d/textures/CHAR_AbeFace_emit.png" id="1_i27k8"]

[sub_resource type="VisualShaderNodeVectorDecompose" id="VisualShaderNodeVectorDecompose_d6qq4"]

[sub_resource type="VisualShaderNodeFloatOp" id="VisualShaderNodeFloatOp_elov7"]
default_input_values = [0, 0.0, 1, 0.063]
operator = 4

[sub_resource type="VisualShaderNodeFloatOp" id="VisualShaderNodeFloatOp_terno"]
default_input_values = [0, 0.0, 1, 16.0]
operator = 2

[sub_resource type="VisualShaderNodeFloatOp" id="VisualShaderNodeFloatOp_t2rfa"]
default_input_values = [0, 0.0, 1, 16.0]
operator = 2

[sub_resource type="Curve" id="Curve_xwnuv"]
_data = [Vector2(0.1, 0), 0.0, 0.0, 0, 0, Vector2(0.1, 1), inf_neg, 0.0, 1, 1, Vector2(0.9, 1), 0.0, 1.0, 1, 0, Vector2(0.9, 0), 0.0, inf_neg, 0, 1]
point_count = 4

[sub_resource type="CurveTexture" id="CurveTexture_gyi8v"]
curve = SubResource("Curve_xwnuv")

[sub_resource type="VisualShaderNodeCurveTexture" id="VisualShaderNodeCurveTexture_4kyr2"]
texture = SubResource("CurveTexture_gyi8v")

[sub_resource type="VisualShaderNodeFloatOp" id="VisualShaderNodeFloatOp_4i6vu"]
output_port_for_preview = 0
operator = 2

[sub_resource type="VisualShaderNodeVectorCompose" id="VisualShaderNodeVectorCompose_0m68h"]
op_type = 0

[sub_resource type="VisualShaderNodeVectorDecompose" id="VisualShaderNodeVectorDecompose_n0bop"]
default_input_values = [0, Vector2(0, 0)]
op_type = 0

[sub_resource type="VisualShaderNodeVectorDecompose" id="VisualShaderNodeVectorDecompose_ljdly"]
output_port_for_preview = 3
default_input_values = [0, Quaternion(0, 0, 0, 0)]
op_type = 2

[sub_resource type="VisualShaderNodeTexture" id="VisualShaderNodeTexture_73meh"]
output_port_for_preview = 0
texture = ExtResource("1_i27k8")
texture_type = 1

[sub_resource type="VisualShaderNodeTexture2DParameter" id="VisualShaderNodeTexture2DParameter_1mc6n"]
parameter_name = "Texture2DParameter"
texture_filter = 1
texture_source = 1

[sub_resource type="VisualShaderNodeCurveTexture" id="VisualShaderNodeCurveTexture_hhrdd"]
texture = SubResource("CurveTexture_gyi8v")

[sub_resource type="VisualShaderNodeMix" id="VisualShaderNodeMix_4bp17"]
output_port_for_preview = 0

[sub_resource type="VisualShaderNodeColorConstant" id="VisualShaderNodeColorConstant_4wfcn"]
constant = Color(0, 0, 0, 1)

[sub_resource type="VisualShaderNodeMix" id="VisualShaderNodeMix_6vexp"]
default_input_values = [0, Vector3(0, 0, 0), 1, Vector3(1, 1, 1), 2, Vector3(0.5, 0.5, 0.5)]
op_type = 3

[sub_resource type="VisualShaderNodeColorConstant" id="VisualShaderNodeColorConstant_tbf24"]
constant = Color(2.49804, 1.28235, 0, 1)

[sub_resource type="VisualShaderNodeInput" id="VisualShaderNodeInput_tmgrx"]
input_name = "uv2"

[sub_resource type="VisualShaderNodeFloatOp" id="VisualShaderNodeFloatOp_4ty6k"]
default_input_values = [0, 0.0, 1, 0.063]
operator = 4

[resource]
code = "shader_type spatial;
render_mode blend_mix, depth_draw_opaque, cull_back, diffuse_lambert, specular_schlick_ggx;

uniform sampler2D Texture2DParameter : filter_nearest, hint_screen_texture;
uniform sampler2D tex_frg_24 : source_color;
uniform sampler2D curve_frg_26 : repeat_disable;
uniform sampler2D curve_frg_14 : repeat_disable;



void fragment() {
// ColorConstant:28
	vec4 n_out28p0 = vec4(0.000000, 0.000000, 0.000000, 1.000000);


// Input:6
	vec2 n_out6p0 = UV2;


// VectorDecompose:17
	float n_out17p0 = n_out6p0.x;
	float n_out17p1 = n_out6p0.y;


// VectorCompose:16
	vec2 n_out16p0 = vec2(n_out17p0, n_out17p1);


// Texture2D:24
	vec4 n_out24p0 = texture(tex_frg_24, n_out16p0);


// VectorDecompose:22
	float n_out22p0 = n_out24p0.x;
	float n_out22p1 = n_out24p0.y;
	float n_out22p2 = n_out24p0.z;
	float n_out22p3 = n_out24p0.w;


// VectorDecompose:10
	float n_out10p0 = vec3(n_out6p0, 0.0).x;
	float n_out10p1 = vec3(n_out6p0, 0.0).y;
	float n_out10p2 = vec3(n_out6p0, 0.0).z;


// FloatOp:11
	float n_in11p1 = 0.06300;
	float n_out11p0 = mod(n_out10p1, n_in11p1);


// FloatOp:13
	float n_in13p1 = 16.00000;
	float n_out13p0 = n_out11p0 * n_in13p1;


// CurveTexture:26
	float n_out26p0 = texture(curve_frg_26, vec2(n_out13p0)).r;


// FloatOp:9
	float n_in9p1 = 0.06300;
	float n_out9p0 = mod(n_out10p0, n_in9p1);


// FloatOp:12
	float n_in12p1 = 16.00000;
	float n_out12p0 = n_out9p0 * n_in12p1;


// CurveTexture:14
	float n_out14p0 = texture(curve_frg_14, vec2(n_out12p0)).r;


// FloatOp:15
	float n_out15p0 = n_out26p0 * n_out14p0;


// Mix:27
	float n_in27p0 = 0.00000;
	float n_out27p0 = mix(n_in27p0, n_out22p3, n_out15p0);


// ColorConstant:5
	vec4 n_out5p0 = vec4(2.498040, 1.282350, 0.000000, 1.000000);


// Mix:4
	vec3 n_in4p0 = vec3(0.00000, 0.00000, 0.00000);
	vec3 n_out4p0 = mix(n_in4p0, vec3(n_out5p0.xyz), vec3(n_out27p0));


// Output:0
	ALBEDO = vec3(n_out28p0.xyz);
	ALPHA = n_out27p0;
	EMISSION = n_out4p0;
	DEPTH = n_out27p0;


}
"
nodes/fragment/0/position = Vector2(1720, -480)
nodes/fragment/4/node = SubResource("VisualShaderNodeMix_6vexp")
nodes/fragment/4/position = Vector2(1120, 360)
nodes/fragment/5/node = SubResource("VisualShaderNodeColorConstant_tbf24")
nodes/fragment/5/position = Vector2(660, 480)
nodes/fragment/6/node = SubResource("VisualShaderNodeInput_tmgrx")
nodes/fragment/6/position = Vector2(-1339.8, 488.2)
nodes/fragment/9/node = SubResource("VisualShaderNodeFloatOp_4ty6k")
nodes/fragment/9/position = Vector2(-439.8, 48.2)
nodes/fragment/10/node = SubResource("VisualShaderNodeVectorDecompose_d6qq4")
nodes/fragment/10/position = Vector2(-699.8, 168.2)
nodes/fragment/11/node = SubResource("VisualShaderNodeFloatOp_elov7")
nodes/fragment/11/position = Vector2(-439.8, 168.2)
nodes/fragment/12/node = SubResource("VisualShaderNodeFloatOp_terno")
nodes/fragment/12/position = Vector2(-279.8, 28.2)
nodes/fragment/13/node = SubResource("VisualShaderNodeFloatOp_t2rfa")
nodes/fragment/13/position = Vector2(-279.8, 148.2)
nodes/fragment/14/node = SubResource("VisualShaderNodeCurveTexture_4kyr2")
nodes/fragment/14/position = Vector2(-99.8, -111.8)
nodes/fragment/15/node = SubResource("VisualShaderNodeFloatOp_4i6vu")
nodes/fragment/15/position = Vector2(300.2, 48.2)
nodes/fragment/16/node = SubResource("VisualShaderNodeVectorCompose_0m68h")
nodes/fragment/16/position = Vector2(-239.8, 428.2)
nodes/fragment/17/node = SubResource("VisualShaderNodeVectorDecompose_n0bop")
nodes/fragment/17/position = Vector2(-799.8, 448.2)
nodes/fragment/22/node = SubResource("VisualShaderNodeVectorDecompose_ljdly")
nodes/fragment/22/position = Vector2(340.2, 468.2)
nodes/fragment/24/node = SubResource("VisualShaderNodeTexture_73meh")
nodes/fragment/24/position = Vector2(60.2, 488.2)
nodes/fragment/25/node = SubResource("VisualShaderNodeTexture2DParameter_1mc6n")
nodes/fragment/25/position = Vector2(-620, 680)
nodes/fragment/26/node = SubResource("VisualShaderNodeCurveTexture_hhrdd")
nodes/fragment/26/position = Vector2(-99.8, 148.2)
nodes/fragment/27/node = SubResource("VisualShaderNodeMix_4bp17")
nodes/fragment/27/position = Vector2(620, 140)
nodes/fragment/28/node = SubResource("VisualShaderNodeColorConstant_4wfcn")
nodes/fragment/28/position = Vector2(1365.81, -489.417)
nodes/fragment/connections = PackedInt32Array(25, 0, 24, 2, 24, 0, 22, 0, 5, 0, 4, 1, 6, 0, 10, 0, 10, 0, 9, 0, 10, 1, 11, 0, 9, 0, 12, 0, 11, 0, 13, 0, 12, 0, 14, 0, 13, 0, 26, 0, 26, 0, 15, 0, 14, 0, 15, 1, 6, 0, 17, 0, 17, 1, 16, 1, 16, 0, 24, 0, 17, 0, 16, 0, 15, 0, 27, 2, 22, 3, 27, 1, 27, 0, 4, 2, 27, 0, 0, 1, 4, 0, 0, 5, 28, 0, 0, 0, 27, 0, 0, 23)
