mirror of
https://github.com/Relintai/material-maker.git
synced 2024-12-27 23:17:14 +01:00
210 lines
5.1 KiB
Plaintext
210 lines
5.1 KiB
Plaintext
|
[gd_scene load_steps=14 format=2]
|
||
|
|
||
|
[ext_resource path="res://material_maker/nodes/levels.gd" type="Script" id=1]
|
||
|
|
||
|
[sub_resource type="Shader" id=1]
|
||
|
code = "shader_type canvas_item;
|
||
|
|
||
|
uniform sampler2D tex;
|
||
|
|
||
|
void fragment() {
|
||
|
COLOR = texture(tex, UV);
|
||
|
}
|
||
|
"
|
||
|
|
||
|
[sub_resource type="ImageTexture" id=14]
|
||
|
resource_local_to_scene = true
|
||
|
flags = 0
|
||
|
flags = 0
|
||
|
|
||
|
[sub_resource type="ShaderMaterial" id=4]
|
||
|
resource_local_to_scene = true
|
||
|
shader = SubResource( 1 )
|
||
|
shader_param/tex = SubResource( 14 )
|
||
|
|
||
|
[sub_resource type="Shader" id=5]
|
||
|
code = "shader_type canvas_item;
|
||
|
|
||
|
uniform sampler2D tex;
|
||
|
|
||
|
void fragment() {
|
||
|
vec4 sum = vec4(0.0);
|
||
|
for (int i = 0; i < 128; ++i) {
|
||
|
sum += step(abs(texture(tex, vec2(UV.x, float(i)/127.0))-UV.y), vec4(0.02));
|
||
|
}
|
||
|
COLOR = vec4(sum.xyz/255.0, 1.0);
|
||
|
}
|
||
|
"
|
||
|
|
||
|
[sub_resource type="ViewportTexture" id=6]
|
||
|
viewport_path = NodePath("ViewportImage")
|
||
|
|
||
|
[sub_resource type="ShaderMaterial" id=7]
|
||
|
resource_local_to_scene = true
|
||
|
shader = SubResource( 5 )
|
||
|
shader_param/tex = SubResource( 6 )
|
||
|
|
||
|
[sub_resource type="Shader" id=8]
|
||
|
code = "shader_type canvas_item;
|
||
|
|
||
|
uniform sampler2D tex;
|
||
|
|
||
|
void fragment() {
|
||
|
vec4 sum = vec4(0.0);
|
||
|
for (int i = 0; i < 128; ++i) {
|
||
|
sum += texture(tex, vec2(float(i)/127.0, UV.x));
|
||
|
}
|
||
|
COLOR = vec4(sum.xyz/255.0, 1.0);
|
||
|
}"
|
||
|
|
||
|
[sub_resource type="ViewportTexture" id=9]
|
||
|
viewport_path = NodePath("ViewportHistogram1")
|
||
|
|
||
|
[sub_resource type="ShaderMaterial" id=10]
|
||
|
resource_local_to_scene = true
|
||
|
shader = SubResource( 8 )
|
||
|
shader_param/tex = SubResource( 9 )
|
||
|
|
||
|
[sub_resource type="Shader" id=11]
|
||
|
code = "shader_type canvas_item;
|
||
|
|
||
|
uniform sampler2D tex;
|
||
|
|
||
|
void fragment() {
|
||
|
if (abs(fract(UV.y+0.05)) < 0.1) {
|
||
|
COLOR = vec4(vec3(UV.x), 1.0);
|
||
|
} else {
|
||
|
vec4 highest = vec4(0.0);
|
||
|
for (int i = 0; i < 128; ++i) {
|
||
|
highest = max(highest, texture(tex, vec2(float(i)/128.0, 0.0)));
|
||
|
}
|
||
|
vec4 value = 0.5*(texture(tex, vec2(max(0.0, UV.x-0.025), 0.0))+texture(tex, vec2(min(1.0, UV.x+0.025), 0.0)));
|
||
|
COLOR = vec4(step(vec4(0.95-UV.y)*highest/0.9, value).xyz, 1.0);
|
||
|
}
|
||
|
}"
|
||
|
|
||
|
[sub_resource type="ViewportTexture" id=12]
|
||
|
viewport_path = NodePath("ViewportHistogram2")
|
||
|
|
||
|
[sub_resource type="ShaderMaterial" id=13]
|
||
|
resource_local_to_scene = true
|
||
|
shader = SubResource( 11 )
|
||
|
shader_param/tex = SubResource( 12 )
|
||
|
|
||
|
[node name="Tones" type="GraphNode"]
|
||
|
anchor_right = 1.0
|
||
|
anchor_bottom = 1.0
|
||
|
margin_left = -39.6668
|
||
|
margin_top = 14.4243
|
||
|
margin_right = -1095.67
|
||
|
margin_bottom = -579.576
|
||
|
title = "Tones"
|
||
|
show_close = true
|
||
|
slot/0/left_enabled = true
|
||
|
slot/0/left_type = 0
|
||
|
slot/0/left_color = Color( 0, 0.396078, 1, 1 )
|
||
|
slot/0/right_enabled = true
|
||
|
slot/0/right_type = 0
|
||
|
slot/0/right_color = Color( 0, 0.415686, 1, 1 )
|
||
|
slot/1/left_enabled = false
|
||
|
slot/1/left_type = 0
|
||
|
slot/1/left_color = Color( 1, 1, 1, 1 )
|
||
|
slot/1/right_enabled = false
|
||
|
slot/1/right_type = 0
|
||
|
slot/1/right_color = Color( 1, 1, 1, 1 )
|
||
|
slot/2/left_enabled = false
|
||
|
slot/2/left_type = 0
|
||
|
slot/2/left_color = Color( 1, 1, 1, 1 )
|
||
|
slot/2/right_enabled = false
|
||
|
slot/2/right_type = 0
|
||
|
slot/2/right_color = Color( 1, 1, 1, 1 )
|
||
|
slot/3/left_enabled = false
|
||
|
slot/3/left_type = 0
|
||
|
slot/3/left_color = Color( 1, 1, 1, 1 )
|
||
|
slot/3/right_enabled = false
|
||
|
slot/3/right_type = 0
|
||
|
slot/3/right_color = Color( 1, 1, 1, 1 )
|
||
|
script = ExtResource( 1 )
|
||
|
__meta__ = {
|
||
|
"_edit_use_anchors_": false
|
||
|
}
|
||
|
|
||
|
[node name="ViewportImage" type="Viewport" parent="."]
|
||
|
size = Vector2( 256, 256 )
|
||
|
disable_3d = true
|
||
|
keep_3d_linear = true
|
||
|
usage = 0
|
||
|
render_target_v_flip = true
|
||
|
render_target_update_mode = 3
|
||
|
|
||
|
[node name="ColorRect" type="ColorRect" parent="ViewportImage"]
|
||
|
material = SubResource( 4 )
|
||
|
margin_right = 256.0
|
||
|
margin_bottom = 128.0
|
||
|
rect_min_size = Vector2( 256, 256 )
|
||
|
|
||
|
[node name="ViewportHistogram1" type="Viewport" parent="."]
|
||
|
size = Vector2( 128, 128 )
|
||
|
disable_3d = true
|
||
|
keep_3d_linear = true
|
||
|
usage = 0
|
||
|
render_target_v_flip = true
|
||
|
render_target_update_mode = 3
|
||
|
|
||
|
[node name="ColorRect" type="ColorRect" parent="ViewportHistogram1"]
|
||
|
material = SubResource( 7 )
|
||
|
margin_right = 128.0
|
||
|
margin_bottom = 128.0
|
||
|
rect_min_size = Vector2( 128, 128 )
|
||
|
|
||
|
[node name="ViewportHistogram2" type="Viewport" parent="."]
|
||
|
size = Vector2( 128, 2 )
|
||
|
disable_3d = true
|
||
|
keep_3d_linear = true
|
||
|
usage = 0
|
||
|
render_target_v_flip = true
|
||
|
render_target_update_mode = 3
|
||
|
|
||
|
[node name="ColorRect" type="ColorRect" parent="ViewportHistogram2"]
|
||
|
material = SubResource( 10 )
|
||
|
margin_right = 128.0
|
||
|
margin_bottom = 2.0
|
||
|
rect_min_size = Vector2( 128, 2 )
|
||
|
|
||
|
[node name="Mode" type="OptionButton" parent="."]
|
||
|
margin_left = 16.0
|
||
|
margin_top = 24.0
|
||
|
margin_right = 208.0
|
||
|
margin_bottom = 44.0
|
||
|
text = "Luminance"
|
||
|
items = [ "Luminance", null, false, 0, null, "Red", null, false, 1, null, "Green", null, false, 2, null, "Blue", null, false, 3, null, "Alpha", null, false, 4, null ]
|
||
|
selected = 0
|
||
|
|
||
|
[node name="Spacer1" type="Control" parent="."]
|
||
|
margin_left = 16.0
|
||
|
margin_top = 45.0
|
||
|
margin_right = 208.0
|
||
|
margin_bottom = 49.0
|
||
|
rect_min_size = Vector2( 0, 4 )
|
||
|
__meta__ = {
|
||
|
"_edit_use_anchors_": false
|
||
|
}
|
||
|
|
||
|
[node name="Histogram" type="ColorRect" parent="."]
|
||
|
material = SubResource( 13 )
|
||
|
margin_left = 16.0
|
||
|
margin_top = 50.0
|
||
|
margin_right = 208.0
|
||
|
margin_bottom = 178.0
|
||
|
rect_min_size = Vector2( 192, 128 )
|
||
|
|
||
|
[node name="Spacer2" type="Control" parent="."]
|
||
|
margin_left = 16.0
|
||
|
margin_top = 179.0
|
||
|
margin_right = 208.0
|
||
|
margin_bottom = 183.0
|
||
|
rect_min_size = Vector2( 0, 4 )
|
||
|
__meta__ = {
|
||
|
"_edit_use_anchors_": false
|
||
|
}
|