From a9e7442accba33e12754863521c21cb9939a5b9d Mon Sep 17 00:00:00 2001 From: Rodolphe Suescun Date: Wed, 8 Aug 2018 10:50:48 +0200 Subject: [PATCH] Added uniform color node ... and minor fixes --- addons/procedural_material/library.gd | 16 +++-- addons/procedural_material/library/base.json | 7 +- addons/procedural_material/main_window.tscn | 2 +- addons/procedural_material/node_base.gd | 2 +- addons/procedural_material/nodes/colorize.gd | 6 -- addons/procedural_material/nodes/pattern.gd | 1 - addons/procedural_material/nodes/pattern.tscn | 4 +- addons/procedural_material/nodes/uniform.gd | 12 ++++ addons/procedural_material/nodes/uniform.tscn | 67 +++++++++++++++++++ examples/bricks.ptex | 2 +- examples/crocodile_skin.ptex | 2 +- examples/dry_earth.ptex | 2 +- examples/floor2.ptex | 2 +- examples/grass with flowers.ptex | 2 +- examples/metal_pattern.ptex | 2 +- examples/rusted_metal.ptex | 2 +- examples/stone_wall.ptex | 2 +- examples/wood_with_blood.ptex | 2 +- examples/wooden_floor.ptex | 2 +- 19 files changed, 109 insertions(+), 28 deletions(-) create mode 100644 addons/procedural_material/nodes/uniform.gd create mode 100644 addons/procedural_material/nodes/uniform.tscn diff --git a/addons/procedural_material/library.gd b/addons/procedural_material/library.gd index 801a66c..5766e1e 100644 --- a/addons/procedural_material/library.gd +++ b/addons/procedural_material/library.gd @@ -1,19 +1,22 @@ extends Tree -# class member variables go here, for example: -# var a = 2 -# var b = "textvar" func get_drag_data(position): var selected_item = get_selected() if selected_item != null: var data = selected_item.get_metadata(0) + if data == null: + return null var preview if data.has("icon") && data.has("library"): var filename = data.library.left(data.library.rfind("."))+"/"+data.icon+".png" preview = TextureRect.new() preview.texture = ImageTexture.new() preview.texture.load(filename) + elif data.has("type") and data.type == "uniform": + preview = ColorRect.new() + preview.rect_size = Vector2(32, 32) + preview.color = Color(data.color.r, data.color.g, data.color.b, data.color.a) else: preview = Label.new() preview.text = data.tree_item @@ -33,9 +36,10 @@ func add_library(filename): return var lib = parse_json(file.get_as_text()) file.close() - for m in lib.lib: - m.library = filename - add_item(m, m.tree_item) + if lib != null && lib.has("lib"): + for m in lib.lib: + m.library = filename + add_item(m, m.tree_item) func add_item(item, item_name, item_parent = null): if item_parent == null: diff --git a/addons/procedural_material/library/base.json b/addons/procedural_material/library/base.json index 1d963f1..62f5427 100644 --- a/addons/procedural_material/library/base.json +++ b/addons/procedural_material/library/base.json @@ -1,8 +1,13 @@ {"lib":[ + { + "tree_item":"Generators/Uniform", + "type":"uniform", + "color":{"type":"Color", "r":1, "g":1, "b":1, "a":1} + }, { "tree_item":"Generators/Image", "type":"image", - "file_path":null + "file_path":"res://addons/procedural_material/nodes/godot_logo.png" }, { "tree_item":"Generators/Pattern", diff --git a/addons/procedural_material/main_window.tscn b/addons/procedural_material/main_window.tscn index f3e47ee..73fd352 100644 --- a/addons/procedural_material/main_window.tscn +++ b/addons/procedural_material/main_window.tscn @@ -4,7 +4,7 @@ [ext_resource path="res://addons/procedural_material/library.gd" type="Script" id=2] [ext_resource path="res://addons/procedural_material/preview.tscn" type="PackedScene" id=3] -[node name="MainWindow" type="Panel" index="0"] +[node name="MainWindow" type="Panel"] anchor_left = 0.0 anchor_top = 0.0 diff --git a/addons/procedural_material/node_base.gd b/addons/procedural_material/node_base.gd index 8ec0139..2083158 100644 --- a/addons/procedural_material/node_base.gd +++ b/addons/procedural_material/node_base.gd @@ -134,7 +134,7 @@ func serialize_element(e): func deserialize_element(e): if typeof(e) == TYPE_DICTIONARY: - if e.type == "Color": + if e.has("type") and e.type == "Color": return Color(e.r, e.g, e.b, e.a) return e diff --git a/addons/procedural_material/nodes/colorize.gd b/addons/procedural_material/nodes/colorize.gd index 8325856..8b0949e 100644 --- a/addons/procedural_material/nodes/colorize.gd +++ b/addons/procedural_material/nodes/colorize.gd @@ -1,12 +1,6 @@ tool extends "res://addons/procedural_material/node_base.gd" -var color0 -var color1 - -func _ready(): - set_slot(0, true, 0, Color(0.5, 0.5, 1), true, 0, Color(0.5, 0.5, 1)) - func _get_shader_code(uv): var rv = { defs="", code="" } var src = get_source() diff --git a/addons/procedural_material/nodes/pattern.gd b/addons/procedural_material/nodes/pattern.gd index 9df59c8..c51c020 100644 --- a/addons/procedural_material/nodes/pattern.gd +++ b/addons/procedural_material/nodes/pattern.gd @@ -11,7 +11,6 @@ const WAVE_FCT = [ "wave_sin", "wave_triangle", "wave_square", "fract" ] const MIX_FCT = [ "mix_multiply", "mix_add", "mix_max", "mix_min", "mix_xor", "mix_pow" ] func _ready(): - set_slot(0, false, 0, Color(0.5, 0.5, 1), true, 0, Color(0.5, 0.5, 1)) initialize_properties([ $HBoxContainer0/mix, $HBoxContainer1/x_wave, $HBoxContainer1/x_scale, $HBoxContainer2/y_wave, $HBoxContainer2/y_scale ]) func _get_shader_code(uv): diff --git a/addons/procedural_material/nodes/pattern.tscn b/addons/procedural_material/nodes/pattern.tscn index d260e00..6875e6e 100644 --- a/addons/procedural_material/nodes/pattern.tscn +++ b/addons/procedural_material/nodes/pattern.tscn @@ -5,7 +5,7 @@ [sub_resource type="Theme" id=1] -[node name="Pattern" type="GraphNode" index="0"] +[node name="Pattern" type="GraphNode"] anchor_left = 0.0 anchor_top = 0.0 @@ -47,7 +47,7 @@ slot/2/right_enabled = false slot/2/right_type = 0 slot/2/right_color = Color( 1, 1, 1, 1 ) script = ExtResource( 1 ) -_sections_unfolded = [ "Theme" ] +_sections_unfolded = [ "Theme", "slot" ] [node name="HBoxContainer0" type="HBoxContainer" parent="." index="0"] diff --git a/addons/procedural_material/nodes/uniform.gd b/addons/procedural_material/nodes/uniform.gd new file mode 100644 index 0000000..96ec5a7 --- /dev/null +++ b/addons/procedural_material/nodes/uniform.gd @@ -0,0 +1,12 @@ +tool +extends "res://addons/procedural_material/node_base.gd" + +var color = Color(0.0, 0.0, 0.0) + +func _ready(): + initialize_properties([ $color ]) + +func _get_shader_code(uv): + var rv = { defs="", code="" } + rv.rgb = "vec3(%.9f, %.9f, %.9f)" % [ color.r, color.g, color.b ] + return rv diff --git a/addons/procedural_material/nodes/uniform.tscn b/addons/procedural_material/nodes/uniform.tscn new file mode 100644 index 0000000..82b8ddf --- /dev/null +++ b/addons/procedural_material/nodes/uniform.tscn @@ -0,0 +1,67 @@ +[gd_scene load_steps=3 format=2] + +[ext_resource path="res://addons/procedural_material/nodes/uniform.gd" type="Script" id=1] + +[sub_resource type="Theme" id=1] + + +[node name="Uniform" type="GraphNode" index="0"] + +anchor_left = 0.0 +anchor_top = 0.0 +anchor_right = 0.0 +anchor_bottom = 0.0 +margin_left = 1.0 +margin_top = 4.0 +margin_right = 98.0 +margin_bottom = 53.0 +rect_pivot_offset = Vector2( 0, 0 ) +rect_clip_content = false +mouse_filter = 1 +mouse_default_cursor_shape = 0 +size_flags_horizontal = 1 +size_flags_vertical = 1 +theme = SubResource( 1 ) +title = "Uniform" +offset = Vector2( 0, 0 ) +show_close = true +resizable = false +selected = false +comment = false +overlay = 0 +slot/0/left_enabled = false +slot/0/left_type = 0 +slot/0/left_color = Color( 0.5, 0.5, 1, 1 ) +slot/0/right_enabled = true +slot/0/right_type = 0 +slot/0/right_color = Color( 0.5, 0.5, 1, 1 ) +script = ExtResource( 1 ) +_sections_unfolded = [ "Theme", "slot", "slot/0" ] + +[node name="color" type="ColorPickerButton" parent="." index="0"] + +anchor_left = 0.0 +anchor_top = 0.0 +anchor_right = 0.0 +anchor_bottom = 0.0 +margin_left = 16.0 +margin_top = 24.0 +margin_right = 81.0 +margin_bottom = 44.0 +rect_pivot_offset = Vector2( 0, 0 ) +rect_clip_content = false +focus_mode = 2 +mouse_filter = 0 +mouse_default_cursor_shape = 0 +size_flags_horizontal = 1 +size_flags_vertical = 1 +toggle_mode = false +enabled_focus_mode = 2 +shortcut = null +group = null +flat = false +align = 1 +color = Color( 1, 1, 1, 1 ) +edit_alpha = false + + diff --git a/examples/bricks.ptex b/examples/bricks.ptex index 2963211..0660e72 100644 --- a/examples/bricks.ptex +++ b/examples/bricks.ptex @@ -1 +1 @@ -{"connections":[{"from":"Perlin","from_port":0,"to":"Warp","to_port":1},{"from":"Warp","from_port":0,"to":"colorize_2","to_port":0},{"from":"colorize_2","from_port":0,"to":"blend_0","to_port":2},{"from":"colorize_1","from_port":0,"to":"blend_0","to_port":0},{"from":"colorize_0","from_port":0,"to":"blend_0","to_port":1},{"from":"blend_0","from_port":0,"to":"Material","to_port":0},{"from":"normal_map_0","from_port":0,"to":"Material","to_port":4},{"from":"colorize_2","from_port":0,"to":"colorize_4","to_port":0},{"from":"colorize_4","from_port":0,"to":"Material","to_port":2},{"from":"colorize_2","from_port":0,"to":"colorize_5","to_port":0},{"from":"colorize_5","from_port":0,"to":"Material","to_port":1},{"from":"Bricks","from_port":0,"to":"Warp","to_port":0},{"from":"blend_1","from_port":0,"to":"colorize_1","to_port":0},{"from":"Bricks","from_port":1,"to":"blend_1","to_port":1},{"from":"Warp","from_port":0,"to":"blend_2","to_port":0},{"from":"Perlin","from_port":0,"to":"blend_2","to_port":1},{"from":"blend_2","from_port":0,"to":"colorize_3","to_port":0},{"from":"blend_2","from_port":0,"to":"colorize_6","to_port":0},{"from":"colorize_6","from_port":0,"to":"normal_map_0","to_port":0},{"from":"Perlin","from_port":0,"to":"blend_1","to_port":0},{"from":"Perlin","from_port":0,"to":"colorize_0","to_port":0},{"from":"colorize_3","from_port":0,"to":"Material","to_port":5}],"nodes":[{"gradient":[{"b":0,"g":0,"pos":0,"r":0},{"b":0,"g":0,"pos":1,"r":0}],"name":"colorize_5","node_position":{"x":837,"y":157},"type":"colorize"},{"gradient":[{"b":0,"g":0,"pos":0,"r":0},{"b":1,"g":1,"pos":1,"r":1}],"name":"colorize_0","node_position":{"x":560.943665,"y":50},"type":"colorize"},{"gradient":[{"b":0.0016,"g":0.0016,"pos":0,"r":0.307292},{"b":0,"g":0.180135,"pos":0.2,"r":0.606771},{"b":0,"g":0,"pos":0.354545,"r":0.3125},{"b":0,"g":0.19869,"pos":0.563636,"r":0.669271},{"b":0.019368,"g":0.060224,"pos":0.736364,"r":0.309896},{"b":0,"g":0.180135,"pos":1,"r":0.606771}],"name":"colorize_1","node_position":{"x":562.943665,"y":-65},"type":"colorize"},{"gradient":[{"b":0,"g":0,"pos":0,"r":0},{"b":1,"g":1,"pos":0.1,"r":1}],"name":"colorize_2","node_position":{"x":535.943665,"y":163},"type":"colorize"},{"amount":0.5,"blend_type":6,"name":"blend_1","node_position":{"x":350,"y":244},"type":"blend"},{"bevel":0.2,"columns":3,"mortar":0.05,"name":"Bricks","node_position":{"x":118,"y":-22},"row_offset":0.5,"rows":6,"type":"bricks"},{"amount":0.04,"name":"Warp","node_position":{"x":384,"y":10.75},"type":"warp"},{"name":"Material","node_position":{"x":1081,"y":208},"type":"material"},{"amount":0.5,"name":"normal_map_0","node_position":{"x":925,"y":305},"type":"normal_map"},{"gradient":[{"b":1,"g":1,"pos":0,"r":1},{"b":0,"g":0,"pos":1,"r":0}],"name":"colorize_6","node_position":{"x":743,"y":291},"type":"colorize"},{"amount":0.5,"blend_type":0,"name":"blend_2","node_position":{"x":536,"y":331},"type":"blend"},{"gradient":[{"b":1,"g":1,"pos":0,"r":1},{"b":0.463542,"g":0.463542,"pos":1,"r":0.463542}],"name":"colorize_4","node_position":{"x":708,"y":224},"type":"colorize"},{"iterations":6,"name":"Perlin","node_position":{"x":107,"y":170},"persistence":0.85,"scale_x":4,"scale_y":4,"type":"perlin"},{"amount":0.5,"blend_type":0,"name":"blend_0","node_position":{"x":836.943726,"y":-71},"type":"blend"},{"gradient":[{"b":0.289063,"g":0.289063,"pos":0,"r":0.289063},{"b":0,"g":0,"pos":1,"r":0}],"name":"colorize_3","node_position":{"x":774,"y":400},"type":"colorize"}]} \ No newline at end of file +{"connections":[{"from":"Perlin","from_port":0,"to":"Warp","to_port":1},{"from":"Warp","from_port":0,"to":"colorize_2","to_port":0},{"from":"colorize_2","from_port":0,"to":"blend_0","to_port":2},{"from":"colorize_1","from_port":0,"to":"blend_0","to_port":0},{"from":"colorize_0","from_port":0,"to":"blend_0","to_port":1},{"from":"blend_0","from_port":0,"to":"Material","to_port":0},{"from":"normal_map_0","from_port":0,"to":"Material","to_port":4},{"from":"colorize_2","from_port":0,"to":"colorize_4","to_port":0},{"from":"colorize_4","from_port":0,"to":"Material","to_port":2},{"from":"Bricks","from_port":0,"to":"Warp","to_port":0},{"from":"blend_1","from_port":0,"to":"colorize_1","to_port":0},{"from":"Bricks","from_port":1,"to":"blend_1","to_port":1},{"from":"Warp","from_port":0,"to":"blend_2","to_port":0},{"from":"Perlin","from_port":0,"to":"blend_2","to_port":1},{"from":"blend_2","from_port":0,"to":"colorize_3","to_port":0},{"from":"blend_2","from_port":0,"to":"colorize_6","to_port":0},{"from":"colorize_6","from_port":0,"to":"normal_map_0","to_port":0},{"from":"Perlin","from_port":0,"to":"blend_1","to_port":0},{"from":"Perlin","from_port":0,"to":"colorize_0","to_port":0},{"from":"colorize_3","from_port":0,"to":"Material","to_port":5},{"from":"uniform_0","from_port":0,"to":"Material","to_port":1}],"nodes":[{"gradient":[{"b":0,"g":0,"pos":0,"r":0},{"b":1,"g":1,"pos":1,"r":1}],"name":"colorize_0","node_position":{"x":560.943665,"y":50},"type":"colorize"},{"gradient":[{"b":0.0016,"g":0.0016,"pos":0,"r":0.307292},{"b":0,"g":0.180135,"pos":0.2,"r":0.606771},{"b":0,"g":0,"pos":0.345455,"r":0.3125},{"b":0,"g":0.19869,"pos":0.545455,"r":0.669271},{"b":0.019368,"g":0.060224,"pos":0.736364,"r":0.309896},{"b":0,"g":0.180135,"pos":1,"r":0.606771}],"name":"colorize_1","node_position":{"x":562.943665,"y":-65},"type":"colorize"},{"gradient":[{"b":0,"g":0,"pos":0,"r":0},{"b":1,"g":1,"pos":0.1,"r":1}],"name":"colorize_2","node_position":{"x":535.943665,"y":163},"type":"colorize"},{"amount":0.5,"blend_type":6,"name":"blend_1","node_position":{"x":350,"y":244},"type":"blend"},{"bevel":0.2,"columns":3,"mortar":0.05,"name":"Bricks","node_position":{"x":118,"y":-22},"row_offset":0.5,"rows":6,"type":"bricks"},{"amount":0.04,"name":"Warp","node_position":{"x":384,"y":10.75},"type":"warp"},{"name":"Material","node_position":{"x":1081,"y":208},"type":"material"},{"gradient":[{"b":1,"g":1,"pos":0,"r":1},{"b":0,"g":0,"pos":1,"r":0}],"name":"colorize_6","node_position":{"x":743,"y":291},"type":"colorize"},{"amount":0.5,"blend_type":0,"name":"blend_2","node_position":{"x":536,"y":331},"type":"blend"},{"gradient":[{"b":1,"g":1,"pos":0,"r":1},{"b":0.463542,"g":0.463542,"pos":1,"r":0.463542}],"name":"colorize_4","node_position":{"x":708,"y":224},"type":"colorize"},{"iterations":6,"name":"Perlin","node_position":{"x":107,"y":170},"persistence":0.85,"scale_x":4,"scale_y":4,"type":"perlin"},{"amount":0.5,"blend_type":0,"name":"blend_0","node_position":{"x":836.943726,"y":-71},"type":"blend"},{"gradient":[{"b":0.289063,"g":0.289063,"pos":0,"r":0.289063},{"b":0,"g":0,"pos":1,"r":0}],"name":"colorize_3","node_position":{"x":774,"y":400},"type":"colorize"},{"color":{"a":1,"b":0,"g":0,"r":0,"type":"Color"},"name":"uniform_0","node_position":{"x":892,"y":179},"type":"uniform"},{"amount":0.5,"name":"normal_map_0","node_position":{"x":913,"y":278},"type":"normal_map"}]} \ No newline at end of file diff --git a/examples/crocodile_skin.ptex b/examples/crocodile_skin.ptex index f721196..9822814 100644 --- a/examples/crocodile_skin.ptex +++ b/examples/crocodile_skin.ptex @@ -1 +1 @@ -{"connections":[{"from":"voronoi_0","from_port":0,"to":"colorize_0","to_port":0},{"from":"colorize_0","from_port":0,"to":"normal_map_0","to_port":0},{"from":"normal_map_0","from_port":0,"to":"Material","to_port":4},{"from":"voronoi_0","from_port":0,"to":"colorize_1","to_port":0},{"from":"colorize_1","from_port":0,"to":"Material","to_port":0},{"from":"colorize_2","from_port":0,"to":"Material","to_port":1},{"from":"voronoi_0","from_port":0,"to":"colorize_2","to_port":0},{"from":"voronoi_0","from_port":0,"to":"colorize_3","to_port":0},{"from":"colorize_3","from_port":0,"to":"Material","to_port":2}],"nodes":[{"name":"Material","node_position":{"x":674,"y":164},"type":"material"},{"intensity":0.4,"name":"voronoi_0","node_position":{"x":72,"y":212},"scale_x":16,"scale_y":16,"type":"voronoi"},{"gradient":[{"b":0.010715,"g":0.411458,"pos":0,"r":0.22361},{"b":0,"g":1,"pos":1,"r":0.9375}],"name":"colorize_1","node_position":{"x":384,"y":137},"type":"colorize"},{"gradient":[{"b":0,"g":0,"pos":0,"r":0},{"b":0,"g":0,"pos":1,"r":0}],"name":"colorize_2","node_position":{"x":384,"y":197},"type":"colorize"},{"gradient":[{"b":0.505208,"g":0.505208,"pos":0,"r":0.505208},{"b":0.78125,"g":0.78125,"pos":1,"r":0.78125}],"name":"colorize_3","node_position":{"x":384,"y":258},"type":"colorize"},{"gradient":[{"b":0,"g":0,"pos":0,"r":0},{"b":0.5,"g":0.5,"pos":0.363636,"r":0.5},{"b":1,"g":1,"pos":0.618182,"r":1}],"name":"colorize_0","node_position":{"x":298,"y":317},"type":"colorize"},{"amount":0.5,"name":"normal_map_0","node_position":{"x":478,"y":319},"type":"normal_map"}]} \ No newline at end of file +{"connections":[{"from":"voronoi_0","from_port":0,"to":"colorize_0","to_port":0},{"from":"colorize_0","from_port":0,"to":"normal_map_0","to_port":0},{"from":"normal_map_0","from_port":0,"to":"Material","to_port":4},{"from":"voronoi_0","from_port":0,"to":"colorize_1","to_port":0},{"from":"colorize_1","from_port":0,"to":"Material","to_port":0},{"from":"voronoi_0","from_port":0,"to":"colorize_3","to_port":0},{"from":"colorize_3","from_port":0,"to":"Material","to_port":2},{"from":"uniform_0","from_port":0,"to":"Material","to_port":1}],"nodes":[{"name":"Material","node_position":{"x":674,"y":164},"type":"material"},{"intensity":0.4,"name":"voronoi_0","node_position":{"x":72,"y":212},"scale_x":16,"scale_y":16,"type":"voronoi"},{"gradient":[{"b":0.010715,"g":0.411458,"pos":0,"r":0.22361},{"b":0,"g":1,"pos":1,"r":0.9375}],"name":"colorize_1","node_position":{"x":384,"y":137},"type":"colorize"},{"gradient":[{"b":0.505208,"g":0.505208,"pos":0,"r":0.505208},{"b":0.78125,"g":0.78125,"pos":1,"r":0.78125}],"name":"colorize_3","node_position":{"x":384,"y":258},"type":"colorize"},{"gradient":[{"b":0,"g":0,"pos":0,"r":0},{"b":0.5,"g":0.5,"pos":0.354545,"r":0.5},{"b":1,"g":1,"pos":0.618182,"r":1}],"name":"colorize_0","node_position":{"x":298,"y":317},"type":"colorize"},{"amount":0.5,"name":"normal_map_0","node_position":{"x":478,"y":319},"type":"normal_map"},{"color":{"a":1,"b":0,"g":0,"r":0,"type":"Color"},"name":"uniform_0","node_position":{"x":413,"y":208},"type":"uniform"}]} \ No newline at end of file diff --git a/examples/dry_earth.ptex b/examples/dry_earth.ptex index 9eca287..4f2de30 100644 --- a/examples/dry_earth.ptex +++ b/examples/dry_earth.ptex @@ -1 +1 @@ -{"connections":[{"from":"perlin_0","from_port":0,"to":"colorize_0","to_port":0},{"from":"voronoi_0","from_port":1,"to":"colorize_1","to_port":0},{"from":"colorize_0","from_port":0,"to":"blend_0","to_port":1},{"from":"blend_0","from_port":0,"to":"Material","to_port":0},{"from":"colorize_1","from_port":0,"to":"warp_0","to_port":0},{"from":"perlin_1","from_port":0,"to":"warp_0","to_port":1},{"from":"warp_0","from_port":0,"to":"blend_0","to_port":0},{"from":"perlin_1","from_port":0,"to":"colorize_2","to_port":0},{"from":"colorize_2","from_port":0,"to":"Material","to_port":2},{"from":"colorize_3","from_port":0,"to":"Material","to_port":1},{"from":"perlin_1","from_port":0,"to":"colorize_3","to_port":0},{"from":"warp_0","from_port":0,"to":"colorize_4","to_port":0},{"from":"normal_map_0","from_port":0,"to":"Material","to_port":4},{"from":"colorize_4","from_port":0,"to":"blend_1","to_port":1},{"from":"blend_1","from_port":0,"to":"normal_map_0","to_port":0},{"from":"perlin_0","from_port":0,"to":"blend_1","to_port":0}],"nodes":[{"intensity":0.6,"name":"voronoi_0","node_position":{"x":-165,"y":-96.75},"scale_x":4,"scale_y":4,"type":"voronoi"},{"gradient":[{"b":0,"g":0,"pos":0,"r":0},{"b":1,"g":1,"pos":0.081818,"r":1}],"name":"colorize_1","node_position":{"x":93,"y":-117.75},"type":"colorize"},{"iterations":3,"name":"perlin_1","node_position":{"x":-144,"y":50.25},"persistence":0.5,"scale_x":4,"scale_y":4,"type":"perlin"},{"gradient":[{"b":0.200277,"g":0.378784,"pos":0.254545,"r":0.557292},{"b":0.03776,"g":0.150513,"pos":0.663636,"r":0.25}],"name":"colorize_0","node_position":{"x":338,"y":-237.75},"type":"colorize"},{"iterations":10,"name":"perlin_0","node_position":{"x":56,"y":-361.75},"persistence":0.9,"scale_x":2,"scale_y":2,"type":"perlin"},{"name":"Material","node_position":{"x":786,"y":53},"type":"material"},{"gradient":[{"b":0,"g":0,"pos":0,"r":0},{"b":0.15625,"g":0.15625,"pos":1,"r":0.15625}],"name":"colorize_3","node_position":{"x":465,"y":33.25},"type":"colorize"},{"gradient":[{"b":0.90625,"g":0.90625,"pos":0,"r":0.90625},{"b":0.890625,"g":0.890625,"pos":1,"r":0.890625}],"name":"colorize_2","node_position":{"x":454,"y":104.25},"type":"colorize"},{"amount":0.4,"blend_type":2,"name":"blend_0","node_position":{"x":541,"y":-82.75},"type":"blend"},{"amount":0.4,"name":"warp_0","node_position":{"x":264,"y":-13.75},"type":"warp"},{"amount":0.35,"name":"normal_map_0","node_position":{"x":652,"y":222.25},"type":"normal_map"},{"gradient":[{"b":1,"g":1,"pos":0,"r":1},{"b":0,"g":0,"pos":1,"r":0}],"name":"colorize_4","node_position":{"x":228,"y":213.25},"type":"colorize"},{"amount":0.5,"blend_type":0,"name":"blend_1","node_position":{"x":454,"y":226.25},"type":"blend"}]} \ No newline at end of file +{"connections":[{"from":"perlin_0","from_port":0,"to":"colorize_0","to_port":0},{"from":"voronoi_0","from_port":1,"to":"colorize_1","to_port":0},{"from":"colorize_0","from_port":0,"to":"blend_0","to_port":1},{"from":"blend_0","from_port":0,"to":"Material","to_port":0},{"from":"colorize_1","from_port":0,"to":"warp_0","to_port":0},{"from":"perlin_1","from_port":0,"to":"warp_0","to_port":1},{"from":"warp_0","from_port":0,"to":"blend_0","to_port":0},{"from":"colorize_3","from_port":0,"to":"Material","to_port":1},{"from":"perlin_1","from_port":0,"to":"colorize_3","to_port":0},{"from":"warp_0","from_port":0,"to":"colorize_4","to_port":0},{"from":"normal_map_0","from_port":0,"to":"Material","to_port":4},{"from":"colorize_4","from_port":0,"to":"blend_1","to_port":1},{"from":"blend_1","from_port":0,"to":"normal_map_0","to_port":0},{"from":"perlin_0","from_port":0,"to":"blend_1","to_port":0},{"from":"uniform_0","from_port":0,"to":"Material","to_port":2}],"nodes":[{"intensity":0.6,"name":"voronoi_0","node_position":{"x":-165,"y":-96.75},"scale_x":4,"scale_y":4,"type":"voronoi"},{"gradient":[{"b":0,"g":0,"pos":0,"r":0},{"b":1,"g":1,"pos":0.072727,"r":1}],"name":"colorize_1","node_position":{"x":93,"y":-117.75},"type":"colorize"},{"iterations":3,"name":"perlin_1","node_position":{"x":-144,"y":50.25},"persistence":0.5,"scale_x":4,"scale_y":4,"type":"perlin"},{"gradient":[{"b":0.200277,"g":0.378784,"pos":0.245455,"r":0.557292},{"b":0.03776,"g":0.150513,"pos":0.654545,"r":0.25}],"name":"colorize_0","node_position":{"x":338,"y":-237.75},"type":"colorize"},{"iterations":10,"name":"perlin_0","node_position":{"x":56,"y":-361.75},"persistence":0.9,"scale_x":2,"scale_y":2,"type":"perlin"},{"name":"Material","node_position":{"x":786,"y":53},"type":"material"},{"gradient":[{"b":0,"g":0,"pos":0,"r":0},{"b":0.171875,"g":0.171875,"pos":1,"r":0.171875}],"name":"colorize_3","node_position":{"x":465,"y":33.25},"type":"colorize"},{"amount":0.4,"blend_type":2,"name":"blend_0","node_position":{"x":541,"y":-82.75},"type":"blend"},{"amount":0.4,"name":"warp_0","node_position":{"x":264,"y":-13.75},"type":"warp"},{"color":{"a":1,"b":1,"g":1,"r":1,"type":"Color"},"name":"uniform_0","node_position":{"x":490,"y":110},"type":"uniform"},{"amount":0.5,"blend_type":0,"name":"blend_1","node_position":{"x":458,"y":173.25},"type":"blend"},{"amount":0.35,"name":"normal_map_0","node_position":{"x":639,"y":147.25},"type":"normal_map"},{"gradient":[{"b":1,"g":1,"pos":0,"r":1},{"b":0,"g":0,"pos":1,"r":0}],"name":"colorize_4","node_position":{"x":252,"y":178.25},"type":"colorize"}]} \ No newline at end of file diff --git a/examples/floor2.ptex b/examples/floor2.ptex index cec444b..2cfce59 100644 --- a/examples/floor2.ptex +++ b/examples/floor2.ptex @@ -1 +1 @@ -{"connections":[{"from":"perlin_0","from_port":0,"to":"colorize_0","to_port":0},{"from":"colorize_0","from_port":0,"to":"blend_0","to_port":1},{"from":"bricks_0","from_port":0,"to":"blend_0","to_port":0},{"from":"blend_0","from_port":0,"to":"Material","to_port":0},{"from":"colorize_2","from_port":0,"to":"Material","to_port":1},{"from":"bricks_0","from_port":0,"to":"normal_map_0","to_port":0},{"from":"normal_map_0","from_port":0,"to":"Material","to_port":4},{"from":"colorize_1","from_port":0,"to":"Material","to_port":2},{"from":"bricks_0","from_port":0,"to":"colorize_2","to_port":0},{"from":"blend_0","from_port":0,"to":"colorize_1","to_port":0}],"nodes":[{"amount":1,"blend_type":2,"name":"blend_0","node_position":{"x":450,"y":198},"type":"blend"},{"name":"Material","node_position":{"x":773,"y":290},"type":"material"},{"iterations":7,"name":"perlin_0","node_position":{"x":7,"y":263},"persistence":0.85,"scale_x":8,"scale_y":8,"type":"perlin"},{"bevel":0.01,"columns":4,"mortar":0.01,"name":"bricks_0","node_position":{"x":242,"y":382},"row_offset":0,"rows":4,"type":"bricks"},{"amount":0.2,"name":"normal_map_0","node_position":{"x":516,"y":466},"type":"normal_map"},{"gradient":[{"b":1,"g":1,"pos":0,"r":1},{"b":0.484375,"g":0.484375,"pos":1,"r":0.484375}],"name":"colorize_1","node_position":{"x":510,"y":386},"type":"colorize"},{"gradient":[{"b":0.302083,"g":0.302083,"pos":0,"r":0.302083},{"b":0.338542,"g":0.338542,"pos":1,"r":0.338542}],"name":"colorize_2","node_position":{"x":508,"y":315},"type":"colorize"},{"gradient":[{"b":0.588542,"g":0.742839,"pos":0,"r":1},{"b":1,"g":1,"pos":0.672727,"r":1}],"name":"colorize_0","node_position":{"x":232,"y":286},"type":"colorize"}]} \ No newline at end of file +{"connections":[{"from":"perlin_0","from_port":0,"to":"colorize_0","to_port":0},{"from":"colorize_0","from_port":0,"to":"blend_0","to_port":1},{"from":"bricks_0","from_port":0,"to":"blend_0","to_port":0},{"from":"blend_0","from_port":0,"to":"Material","to_port":0},{"from":"bricks_0","from_port":0,"to":"normal_map_0","to_port":0},{"from":"normal_map_0","from_port":0,"to":"Material","to_port":4},{"from":"colorize_1","from_port":0,"to":"Material","to_port":2},{"from":"blend_0","from_port":0,"to":"colorize_1","to_port":0},{"from":"uniform_0","from_port":0,"to":"Material","to_port":1}],"nodes":[{"name":"Material","node_position":{"x":773,"y":290},"type":"material"},{"iterations":7,"name":"perlin_0","node_position":{"x":7,"y":263},"persistence":0.85,"scale_x":8,"scale_y":8,"type":"perlin"},{"bevel":0.01,"columns":4,"mortar":0.01,"name":"bricks_0","node_position":{"x":242,"y":382},"row_offset":0,"rows":4,"type":"bricks"},{"amount":0.2,"name":"normal_map_0","node_position":{"x":516,"y":466},"type":"normal_map"},{"gradient":[{"b":1,"g":1,"pos":0,"r":1},{"b":0.484375,"g":0.484375,"pos":1,"r":0.484375}],"name":"colorize_1","node_position":{"x":510,"y":386},"type":"colorize"},{"gradient":[{"b":0.588542,"g":0.742839,"pos":0,"r":1},{"b":1,"g":1,"pos":0.663636,"r":1}],"name":"colorize_0","node_position":{"x":232,"y":286},"type":"colorize"},{"amount":1,"blend_type":2,"name":"blend_0","node_position":{"x":419,"y":186},"type":"blend"},{"color":{"a":1,"b":0.128906,"g":0.128906,"r":0.128906,"type":"Color"},"name":"uniform_0","node_position":{"x":563,"y":314},"type":"uniform"}]} \ No newline at end of file diff --git a/examples/grass with flowers.ptex b/examples/grass with flowers.ptex index d1dd564..67aabaf 100644 --- a/examples/grass with flowers.ptex +++ b/examples/grass with flowers.ptex @@ -1 +1 @@ -{"connections":[{"from":"perlin_0","from_port":0,"to":"colorize_0","to_port":0},{"from":"voronoi_0","from_port":0,"to":"colorize_1","to_port":0},{"from":"colorize_0","from_port":0,"to":"blend_0","to_port":0},{"from":"colorize_1","from_port":0,"to":"blend_0","to_port":2},{"from":"perlin_0","from_port":0,"to":"normal_map_0","to_port":0},{"from":"normal_map_0","from_port":0,"to":"Material","to_port":4},{"from":"colorize_3","from_port":0,"to":"Material","to_port":1},{"from":"colorize_1","from_port":0,"to":"colorize_3","to_port":0},{"from":"colorize_3","from_port":0,"to":"Material","to_port":2},{"from":"voronoi_0","from_port":2,"to":"blend_0","to_port":1},{"from":"voronoi_0","from_port":0,"to":"colorize_2","to_port":0},{"from":"perlin_0","from_port":0,"to":"colorize_4","to_port":0},{"from":"blend_0","from_port":0,"to":"blend_1","to_port":0},{"from":"colorize_4","from_port":0,"to":"blend_1","to_port":1},{"from":"blend_1","from_port":0,"to":"Material","to_port":0},{"from":"colorize_2","from_port":0,"to":"blend_1","to_port":2}],"nodes":[{"gradient":[{"b":0,"g":0,"pos":0,"r":0},{"b":0,"g":0,"pos":1,"r":0}],"name":"colorize_3","node_position":{"x":655,"y":93.25},"type":"colorize"},{"gradient":[{"b":0.15682,"g":0.734375,"pos":0.454545,"r":0.247062},{"b":0.112522,"g":0.317708,"pos":0.881818,"r":0.144582}],"name":"colorize_0","node_position":{"x":335,"y":-261.75},"type":"colorize"},{"iterations":9,"name":"perlin_0","node_position":{"x":-25,"y":-27.75},"persistence":0.8,"scale_x":6,"scale_y":6,"type":"perlin"},{"intensity":1,"name":"voronoi_0","node_position":{"x":269,"y":-104.75},"scale_x":14,"scale_y":14,"type":"voronoi"},{"name":"Material","node_position":{"x":996,"y":22},"type":"material"},{"amount":0.8,"name":"normal_map_0","node_position":{"x":494,"y":258.25},"type":"normal_map"},{"gradient":[{"b":0,"g":0,"pos":0.263636,"r":0},{"b":1,"g":1,"pos":0.436364,"r":1}],"name":"colorize_1","node_position":{"x":524,"y":-26.75},"type":"colorize"},{"gradient":[{"b":0,"g":0,"pos":0.118182,"r":0},{"b":1,"g":1,"pos":0.190909,"r":1}],"name":"colorize_2","node_position":{"x":413,"y":71.25},"type":"colorize"},{"gradient":[{"b":0,"g":0.96875,"pos":0,"r":1},{"b":0,"g":1,"pos":1,"r":1}],"name":"colorize_4","node_position":{"x":407,"y":-177.75},"type":"colorize"},{"amount":0.5,"blend_type":0,"name":"blend_0","node_position":{"x":643,"y":-244.75},"type":"blend"},{"amount":0.5,"blend_type":0,"name":"blend_1","node_position":{"x":826,"y":-119.75},"type":"blend"}]} \ No newline at end of file +{"connections":[{"from":"perlin_0","from_port":0,"to":"colorize_0","to_port":0},{"from":"voronoi_0","from_port":0,"to":"colorize_1","to_port":0},{"from":"colorize_0","from_port":0,"to":"blend_0","to_port":0},{"from":"colorize_1","from_port":0,"to":"blend_0","to_port":2},{"from":"perlin_0","from_port":0,"to":"normal_map_0","to_port":0},{"from":"normal_map_0","from_port":0,"to":"Material","to_port":4},{"from":"colorize_3","from_port":0,"to":"Material","to_port":1},{"from":"colorize_1","from_port":0,"to":"colorize_3","to_port":0},{"from":"colorize_3","from_port":0,"to":"Material","to_port":2},{"from":"voronoi_0","from_port":2,"to":"blend_0","to_port":1},{"from":"voronoi_0","from_port":0,"to":"colorize_2","to_port":0},{"from":"blend_0","from_port":0,"to":"blend_1","to_port":0},{"from":"blend_1","from_port":0,"to":"Material","to_port":0},{"from":"colorize_2","from_port":0,"to":"blend_1","to_port":2},{"from":"uniform_0","from_port":0,"to":"blend_1","to_port":1}],"nodes":[{"gradient":[{"b":0,"g":0,"pos":0,"r":0},{"b":0,"g":0,"pos":1,"r":0}],"name":"colorize_3","node_position":{"x":655,"y":93.25},"type":"colorize"},{"gradient":[{"b":0.15682,"g":0.734375,"pos":0.445455,"r":0.247062},{"b":0.112522,"g":0.317708,"pos":0.872727,"r":0.144582}],"name":"colorize_0","node_position":{"x":335,"y":-261.75},"type":"colorize"},{"iterations":9,"name":"perlin_0","node_position":{"x":-25,"y":-27.75},"persistence":0.8,"scale_x":6,"scale_y":6,"type":"perlin"},{"intensity":1,"name":"voronoi_0","node_position":{"x":269,"y":-104.75},"scale_x":14,"scale_y":14,"type":"voronoi"},{"name":"Material","node_position":{"x":996,"y":22},"type":"material"},{"amount":0.8,"name":"normal_map_0","node_position":{"x":494,"y":258.25},"type":"normal_map"},{"gradient":[{"b":0,"g":0,"pos":0.254545,"r":0},{"b":1,"g":1,"pos":0.436364,"r":1}],"name":"colorize_1","node_position":{"x":524,"y":-26.75},"type":"colorize"},{"gradient":[{"b":0,"g":0,"pos":0.118182,"r":0},{"b":1,"g":1,"pos":0.181818,"r":1}],"name":"colorize_2","node_position":{"x":413,"y":71.25},"type":"colorize"},{"amount":0.5,"blend_type":0,"name":"blend_0","node_position":{"x":643,"y":-244.75},"type":"blend"},{"amount":0.5,"blend_type":0,"name":"blend_1","node_position":{"x":826,"y":-119.75},"type":"blend"},{"color":{"a":1,"b":0,"g":0.984375,"r":1,"type":"Color"},"name":"uniform_0","node_position":{"x":690,"y":-104},"type":"uniform"}]} \ No newline at end of file diff --git a/examples/metal_pattern.ptex b/examples/metal_pattern.ptex index 5aab489..9c20c27 100644 --- a/examples/metal_pattern.ptex +++ b/examples/metal_pattern.ptex @@ -1 +1 @@ -{"connections":[{"from":"pattern_0","from_port":0,"to":"colorize_0","to_port":0},{"from":"colorize_0","from_port":0,"to":"blend_0","to_port":0},{"from":"transform_0","from_port":0,"to":"blend_0","to_port":1},{"from":"colorize_0","from_port":0,"to":"transform_0","to_port":0},{"from":"blend_0","from_port":0,"to":"transform_1","to_port":0},{"from":"transform_1","from_port":0,"to":"blend_1","to_port":1},{"from":"blend_0","from_port":0,"to":"blend_1","to_port":0},{"from":"blend_1","from_port":0,"to":"colorize_1","to_port":0},{"from":"colorize_1","from_port":0,"to":"normal_map_0","to_port":0},{"from":"normal_map_0","from_port":0,"to":"Material","to_port":4}],"nodes":[{"mix":5,"name":"pattern_0","node_position":{"x":26,"y":50},"type":"pattern","x_scale":8,"x_wave":0,"y_scale":8,"y_wave":0},{"gradient":[{"b":0,"g":0,"pos":0.018182,"r":0},{"b":1,"g":1,"pos":0.045455,"r":1}],"name":"colorize_0","node_position":{"x":70,"y":174},"type":"colorize"},{"name":"transform_0","node_position":{"x":54,"y":241},"rotate":0,"scale":1,"translate_x":0.06,"translate_y":0.06,"type":"transform"},{"amount":1,"blend_type":2,"name":"blend_0","node_position":{"x":255,"y":208},"type":"blend"},{"name":"transform_1","node_position":{"x":247,"y":319},"rotate":90,"scale":1,"translate_x":0.06,"translate_y":0,"type":"transform"},{"amount":1,"blend_type":2,"name":"blend_1","node_position":{"x":449,"y":288},"type":"blend"},{"name":"Material","node_position":{"x":717,"y":291},"type":"material"},{"gradient":[{"b":0,"g":0,"pos":0,"r":0},{"b":1,"g":1,"pos":1,"r":1}],"name":"colorize_1","node_position":{"x":444,"y":404},"type":"colorize"},{"amount":0.35,"name":"normal_map_0","node_position":{"x":500,"y":485},"type":"normal_map"}]} \ No newline at end of file +{"connections":[{"from":"pattern_0","from_port":0,"to":"colorize_0","to_port":0},{"from":"colorize_0","from_port":0,"to":"blend_0","to_port":0},{"from":"transform_0","from_port":0,"to":"blend_0","to_port":1},{"from":"colorize_0","from_port":0,"to":"transform_0","to_port":0},{"from":"blend_0","from_port":0,"to":"transform_1","to_port":0},{"from":"transform_1","from_port":0,"to":"blend_1","to_port":1},{"from":"blend_0","from_port":0,"to":"blend_1","to_port":0},{"from":"blend_1","from_port":0,"to":"colorize_1","to_port":0},{"from":"colorize_1","from_port":0,"to":"normal_map_0","to_port":0},{"from":"normal_map_0","from_port":0,"to":"Material","to_port":4},{"from":"perlin_0","from_port":0,"to":"colorize_2","to_port":0},{"from":"colorize_2","from_port":0,"to":"blend_2","to_port":0},{"from":"blend_2","from_port":0,"to":"Material","to_port":0},{"from":"colorize_4","from_port":0,"to":"blend_2","to_port":2},{"from":"colorize_4","from_port":0,"to":"colorize_5","to_port":0},{"from":"colorize_5","from_port":0,"to":"Material","to_port":1},{"from":"colorize_4","from_port":0,"to":"colorize_6","to_port":0},{"from":"colorize_6","from_port":0,"to":"Material","to_port":2},{"from":"perlin_1","from_port":0,"to":"blend_3","to_port":1},{"from":"colorize_7","from_port":0,"to":"blend_3","to_port":0},{"from":"blend_1","from_port":0,"to":"colorize_7","to_port":0},{"from":"blend_3","from_port":0,"to":"colorize_4","to_port":0},{"from":"uniform_0","from_port":0,"to":"blend_2","to_port":1}],"nodes":[{"iterations":7,"name":"perlin_0","node_position":{"x":1,"y":-330},"persistence":0.85,"scale_x":4,"scale_y":4,"type":"perlin"},{"gradient":[{"b":0,"g":0,"pos":0.018182,"r":0},{"b":1,"g":1,"pos":0.045455,"r":1}],"name":"colorize_0","node_position":{"x":-828,"y":218},"type":"colorize"},{"name":"transform_0","node_position":{"x":-845,"y":276},"rotate":0,"scale":1,"translate_x":0.06,"translate_y":0.06,"type":"transform"},{"gradient":[{"b":0,"g":0.152344,"pos":0,"r":0.270833},{"b":0,"g":0.191569,"pos":0.972727,"r":0.557292}],"name":"colorize_2","node_position":{"x":201,"y":-298},"type":"colorize"},{"name":"Material","node_position":{"x":755,"y":-137},"type":"material"},{"amount":0.5,"blend_type":0,"name":"blend_2","node_position":{"x":407.094238,"y":-265.083313},"type":"blend"},{"gradient":[{"b":1,"g":1,"pos":0.609091,"r":1},{"b":0,"g":0,"pos":0.663636,"r":0}],"name":"colorize_5","node_position":{"x":447,"y":-146},"type":"colorize"},{"gradient":[{"b":0,"g":0,"pos":0.445455,"r":0},{"b":1,"g":1,"pos":0.545455,"r":1}],"name":"colorize_4","node_position":{"x":258,"y":-136},"type":"colorize"},{"mix":5,"name":"pattern_0","node_position":{"x":-858,"y":120},"type":"pattern","x_scale":8,"x_wave":0,"y_scale":8,"y_wave":0},{"amount":0.35,"name":"normal_map_0","node_position":{"x":153,"y":183},"type":"normal_map"},{"gradient":[{"b":0,"g":0,"pos":0,"r":0},{"b":1,"g":1,"pos":1,"r":1}],"name":"colorize_1","node_position":{"x":-16,"y":183},"type":"colorize"},{"name":"transform_1","node_position":{"x":-647,"y":285},"rotate":90,"scale":1,"translate_x":0.06,"translate_y":0,"type":"transform"},{"amount":1,"blend_type":2,"name":"blend_0","node_position":{"x":-633,"y":181},"type":"blend"},{"amount":1,"blend_type":2,"name":"blend_1","node_position":{"x":-632,"y":77},"type":"blend"},{"color":{"a":1,"b":1,"g":1,"r":1,"type":"Color"},"name":"uniform_0","node_position":{"x":233,"y":-216},"type":"uniform"},{"gradient":[{"b":0,"g":0,"pos":0,"r":0},{"b":1,"g":1,"pos":0.018182,"r":1}],"name":"colorize_7","node_position":{"x":-109.265503,"y":-175},"type":"colorize"},{"amount":0.2,"blend_type":2,"name":"blend_3","node_position":{"x":72.734497,"y":-156},"type":"blend"},{"iterations":7,"name":"perlin_1","node_position":{"x":-161,"y":-86},"persistence":0.75,"scale_x":4,"scale_y":4,"type":"perlin"},{"gradient":[{"b":0.640625,"g":0.640625,"pos":0,"r":0.640625},{"b":1,"g":1,"pos":1,"r":1}],"name":"colorize_6","node_position":{"x":444,"y":-66},"type":"colorize"}]} \ No newline at end of file diff --git a/examples/rusted_metal.ptex b/examples/rusted_metal.ptex index b56c471..7f33443 100644 --- a/examples/rusted_metal.ptex +++ b/examples/rusted_metal.ptex @@ -1 +1 @@ -{"connections":[{"from":"perlin_0","from_port":0,"to":"colorize_0","to_port":0},{"from":"perlin_1","from_port":0,"to":"colorize_1","to_port":0},{"from":"colorize_2","from_port":0,"to":"blend_0","to_port":0},{"from":"colorize_1","from_port":0,"to":"blend_0","to_port":1},{"from":"perlin_2","from_port":0,"to":"colorize_3","to_port":0},{"from":"colorize_3","from_port":0,"to":"blend_0","to_port":2},{"from":"colorize_0","from_port":0,"to":"blend_1","to_port":1},{"from":"blend_0","from_port":0,"to":"Material","to_port":0},{"from":"perlin_1","from_port":0,"to":"colorize_2","to_port":0},{"from":"colorize_3","from_port":0,"to":"Material","to_port":1},{"from":"blend_1","from_port":0,"to":"Material","to_port":2},{"from":"colorize_4","from_port":0,"to":"blend_1","to_port":0},{"from":"colorize_3","from_port":0,"to":"colorize_4","to_port":0}],"nodes":[{"iterations":8,"name":"perlin_0","node_position":{"x":86,"y":301},"persistence":0.7,"scale_x":4,"scale_y":4,"type":"perlin"},{"iterations":8,"name":"perlin_1","node_position":{"x":86,"y":147},"persistence":0.8,"scale_x":4,"scale_y":4,"type":"perlin"},{"iterations":8,"name":"perlin_2","node_position":{"x":89,"y":-6},"persistence":0.9,"scale_x":4,"scale_y":4,"type":"perlin"},{"name":"Material","node_position":{"x":947,"y":183},"type":"material"},{"gradient":[{"b":0.335938,"g":0.335938,"pos":0,"r":0.335938},{"b":0.695313,"g":0.695313,"pos":1,"r":0.695313}],"name":"colorize_2","node_position":{"x":365,"y":-41},"type":"colorize"},{"gradient":[{"b":0.354545,"g":0.354545,"pos":0,"r":0.354545},{"b":0.745455,"g":0.745455,"pos":1,"r":0.745455}],"name":"colorize_0","node_position":{"x":363,"y":337},"type":"colorize"},{"amount":0.5,"blend_type":4,"name":"blend_1","node_position":{"x":660,"y":290},"type":"blend"},{"gradient":[{"b":0,"g":0,"pos":0.445455,"r":0},{"b":1,"g":1,"pos":0.463636,"r":1}],"name":"colorize_3","node_position":{"x":371,"y":47},"type":"colorize"},{"gradient":[{"b":0,"g":0.091146,"pos":0,"r":0.208333},{"b":0,"g":0.1875,"pos":1,"r":1}],"name":"colorize_1","node_position":{"x":371,"y":214},"type":"colorize"},{"gradient":[{"b":1,"g":1,"pos":0,"r":1},{"b":0,"g":0,"pos":1,"r":0}],"name":"colorize_4","node_position":{"x":480,"y":141},"type":"colorize"},{"amount":0.5,"blend_type":0,"name":"blend_0","node_position":{"x":669,"y":-19},"type":"blend"}]} \ No newline at end of file +{"connections":[{"from":"perlin_0","from_port":0,"to":"colorize_0","to_port":0},{"from":"perlin_1","from_port":0,"to":"colorize_1","to_port":0},{"from":"colorize_2","from_port":0,"to":"blend_0","to_port":0},{"from":"colorize_1","from_port":0,"to":"blend_0","to_port":1},{"from":"perlin_2","from_port":0,"to":"colorize_3","to_port":0},{"from":"colorize_3","from_port":0,"to":"blend_0","to_port":2},{"from":"colorize_0","from_port":0,"to":"blend_1","to_port":1},{"from":"blend_0","from_port":0,"to":"Material","to_port":0},{"from":"perlin_1","from_port":0,"to":"colorize_2","to_port":0},{"from":"colorize_3","from_port":0,"to":"Material","to_port":1},{"from":"blend_1","from_port":0,"to":"Material","to_port":2},{"from":"colorize_4","from_port":0,"to":"blend_1","to_port":0},{"from":"colorize_3","from_port":0,"to":"colorize_4","to_port":0}],"nodes":[{"iterations":8,"name":"perlin_0","node_position":{"x":86,"y":301},"persistence":0.7,"scale_x":4,"scale_y":4,"type":"perlin"},{"iterations":8,"name":"perlin_1","node_position":{"x":86,"y":147},"persistence":0.8,"scale_x":4,"scale_y":4,"type":"perlin"},{"iterations":8,"name":"perlin_2","node_position":{"x":89,"y":-6},"persistence":0.9,"scale_x":4,"scale_y":4,"type":"perlin"},{"gradient":[{"b":0.335938,"g":0.335938,"pos":0,"r":0.335938},{"b":0.695313,"g":0.695313,"pos":1,"r":0.695313}],"name":"colorize_2","node_position":{"x":365,"y":-41},"type":"colorize"},{"gradient":[{"b":0.354545,"g":0.354545,"pos":0,"r":0.354545},{"b":0.745455,"g":0.745455,"pos":1,"r":0.745455}],"name":"colorize_0","node_position":{"x":363,"y":337},"type":"colorize"},{"amount":0.5,"blend_type":4,"name":"blend_1","node_position":{"x":660,"y":290},"type":"blend"},{"gradient":[{"b":0,"g":0,"pos":0.445455,"r":0},{"b":1,"g":1,"pos":0.454545,"r":1}],"name":"colorize_3","node_position":{"x":371,"y":47},"type":"colorize"},{"gradient":[{"b":0,"g":0.091146,"pos":0,"r":0.208333},{"b":0,"g":0.1875,"pos":1,"r":1}],"name":"colorize_1","node_position":{"x":371,"y":214},"type":"colorize"},{"gradient":[{"b":1,"g":1,"pos":0,"r":1},{"b":0,"g":0,"pos":1,"r":0}],"name":"colorize_4","node_position":{"x":480,"y":141},"type":"colorize"},{"amount":0.5,"blend_type":0,"name":"blend_0","node_position":{"x":669,"y":-19},"type":"blend"},{"name":"Material","node_position":{"x":837,"y":123},"type":"material"}]} \ No newline at end of file diff --git a/examples/stone_wall.ptex b/examples/stone_wall.ptex index 75194bc..14fb658 100644 --- a/examples/stone_wall.ptex +++ b/examples/stone_wall.ptex @@ -1 +1 @@ -{"connections":[{"from":"Warp","from_port":0,"to":"colorize_2","to_port":0},{"from":"colorize_2","from_port":0,"to":"blend_0","to_port":2},{"from":"colorize_1","from_port":0,"to":"blend_0","to_port":0},{"from":"colorize_0","from_port":0,"to":"blend_0","to_port":1},{"from":"blend_0","from_port":0,"to":"Material","to_port":0},{"from":"normal_map_0","from_port":0,"to":"Material","to_port":4},{"from":"colorize_2","from_port":0,"to":"colorize_4","to_port":0},{"from":"colorize_4","from_port":0,"to":"Material","to_port":2},{"from":"colorize_2","from_port":0,"to":"colorize_5","to_port":0},{"from":"colorize_5","from_port":0,"to":"Material","to_port":1},{"from":"Bricks","from_port":0,"to":"Warp","to_port":0},{"from":"blend_1","from_port":0,"to":"colorize_1","to_port":0},{"from":"Bricks","from_port":1,"to":"blend_1","to_port":1},{"from":"Warp","from_port":0,"to":"blend_2","to_port":0},{"from":"Perlin","from_port":0,"to":"blend_2","to_port":1},{"from":"blend_2","from_port":0,"to":"colorize_3","to_port":0},{"from":"blend_2","from_port":0,"to":"colorize_6","to_port":0},{"from":"colorize_6","from_port":0,"to":"normal_map_0","to_port":0},{"from":"Perlin","from_port":0,"to":"blend_1","to_port":0},{"from":"Perlin","from_port":0,"to":"colorize_0","to_port":0},{"from":"colorize_3","from_port":0,"to":"Material","to_port":5},{"from":"perlin_0","from_port":0,"to":"Warp","to_port":1}],"nodes":[{"gradient":[{"b":0,"g":0,"pos":0,"r":0},{"b":0,"g":0,"pos":1,"r":0}],"name":"colorize_5","node_position":{"x":837,"y":157},"type":"colorize"},{"amount":0.1,"name":"Warp","node_position":{"x":384,"y":10.75},"type":"warp"},{"gradient":[{"b":1,"g":1,"pos":0,"r":1},{"b":0,"g":0,"pos":1,"r":0}],"name":"colorize_6","node_position":{"x":743,"y":291},"type":"colorize"},{"gradient":[{"b":0.119792,"g":0.119792,"pos":0,"r":0.119792},{"b":0,"g":0,"pos":1,"r":0}],"name":"colorize_3","node_position":{"x":774,"y":400},"type":"colorize"},{"amount":0.5,"blend_type":0,"name":"blend_2","node_position":{"x":536,"y":331},"type":"blend"},{"gradient":[{"b":0,"g":0,"pos":0,"r":0},{"b":1,"g":1,"pos":0.063636,"r":1}],"name":"colorize_2","node_position":{"x":535.943665,"y":163},"type":"colorize"},{"amount":0.5,"blend_type":0,"name":"blend_0","node_position":{"x":836.943726,"y":-71},"type":"blend"},{"gradient":[{"b":0.864583,"g":0.864583,"pos":0,"r":0.864583},{"b":0.854167,"g":0.854167,"pos":1,"r":0.854167}],"name":"colorize_4","node_position":{"x":708,"y":224},"type":"colorize"},{"amount":0.5,"name":"normal_map_0","node_position":{"x":917,"y":273},"type":"normal_map"},{"gradient":[{"b":0,"g":0,"pos":0,"r":0},{"b":1,"g":1,"pos":1,"r":1}],"name":"colorize_0","node_position":{"x":560.943665,"y":50},"type":"colorize"},{"iterations":4,"name":"perlin_0","node_position":{"x":92,"y":210},"persistence":0.75,"scale_x":4,"scale_y":4,"type":"perlin"},{"amount":0.5,"blend_type":6,"name":"blend_1","node_position":{"x":351,"y":244},"type":"blend"},{"bevel":0.2,"columns":3,"mortar":0.1,"name":"Bricks","node_position":{"x":107,"y":-27},"row_offset":0.5,"rows":6,"type":"bricks"},{"iterations":10,"name":"Perlin","node_position":{"x":102,"y":-195},"persistence":0.75,"scale_x":4,"scale_y":4,"type":"perlin"},{"name":"Material","node_position":{"x":1109,"y":161},"type":"material"},{"gradient":[{"b":0.557292,"g":0.557292,"pos":0,"r":0.557292},{"b":0.180664,"g":0.22934,"pos":0.2,"r":0.234375},{"b":0.60574,"g":0.694487,"pos":0.345455,"r":0.755208},{"b":0.144423,"g":0.184147,"pos":0.554545,"r":0.229167},{"b":0.447537,"g":0.553291,"pos":0.736364,"r":0.588542},{"b":0.212674,"g":0.236125,"pos":1,"r":0.291667}],"name":"colorize_1","node_position":{"x":561.943665,"y":-78},"type":"colorize"}]} \ No newline at end of file +{"connections":[{"from":"Warp","from_port":0,"to":"colorize_2","to_port":0},{"from":"colorize_2","from_port":0,"to":"blend_0","to_port":2},{"from":"colorize_1","from_port":0,"to":"blend_0","to_port":0},{"from":"colorize_0","from_port":0,"to":"blend_0","to_port":1},{"from":"blend_0","from_port":0,"to":"Material","to_port":0},{"from":"normal_map_0","from_port":0,"to":"Material","to_port":4},{"from":"Bricks","from_port":0,"to":"Warp","to_port":0},{"from":"blend_1","from_port":0,"to":"colorize_1","to_port":0},{"from":"Bricks","from_port":1,"to":"blend_1","to_port":1},{"from":"Warp","from_port":0,"to":"blend_2","to_port":0},{"from":"Perlin","from_port":0,"to":"blend_2","to_port":1},{"from":"blend_2","from_port":0,"to":"colorize_3","to_port":0},{"from":"blend_2","from_port":0,"to":"colorize_6","to_port":0},{"from":"colorize_6","from_port":0,"to":"normal_map_0","to_port":0},{"from":"Perlin","from_port":0,"to":"blend_1","to_port":0},{"from":"Perlin","from_port":0,"to":"colorize_0","to_port":0},{"from":"colorize_3","from_port":0,"to":"Material","to_port":5},{"from":"perlin_0","from_port":0,"to":"Warp","to_port":1},{"from":"uniform_0","from_port":0,"to":"Material","to_port":1},{"from":"uniform_1","from_port":0,"to":"Material","to_port":2}],"nodes":[{"amount":0.1,"name":"Warp","node_position":{"x":384,"y":10.75},"type":"warp"},{"gradient":[{"b":0,"g":0,"pos":0,"r":0},{"b":1,"g":1,"pos":0.054545,"r":1}],"name":"colorize_2","node_position":{"x":535.943665,"y":163},"type":"colorize"},{"gradient":[{"b":0,"g":0,"pos":0,"r":0},{"b":1,"g":1,"pos":1,"r":1}],"name":"colorize_0","node_position":{"x":560.943665,"y":50},"type":"colorize"},{"iterations":4,"name":"perlin_0","node_position":{"x":92,"y":210},"persistence":0.75,"scale_x":4,"scale_y":4,"type":"perlin"},{"amount":0.5,"blend_type":6,"name":"blend_1","node_position":{"x":351,"y":244},"type":"blend"},{"bevel":0.2,"columns":3,"mortar":0.1,"name":"Bricks","node_position":{"x":107,"y":-27},"row_offset":0.5,"rows":6,"type":"bricks"},{"iterations":10,"name":"Perlin","node_position":{"x":102,"y":-195},"persistence":0.75,"scale_x":4,"scale_y":4,"type":"perlin"},{"gradient":[{"b":0.557292,"g":0.557292,"pos":0,"r":0.557292},{"b":0.180664,"g":0.22934,"pos":0.2,"r":0.234375},{"b":0.60574,"g":0.694487,"pos":0.345455,"r":0.755208},{"b":0.144423,"g":0.184147,"pos":0.545455,"r":0.229167},{"b":0.447537,"g":0.553291,"pos":0.736364,"r":0.588542},{"b":0.212674,"g":0.236125,"pos":1,"r":0.291667}],"name":"colorize_1","node_position":{"x":561.943665,"y":-78},"type":"colorize"},{"color":{"a":1,"b":1,"g":1,"r":1,"type":"Color"},"name":"uniform_1","node_position":{"x":871,"y":159},"type":"uniform"},{"color":{"a":1,"b":0,"g":0,"r":0,"type":"Color"},"name":"uniform_0","node_position":{"x":866,"y":106},"type":"uniform"},{"name":"Material","node_position":{"x":1062,"y":131},"type":"material"},{"gradient":[{"b":1,"g":1,"pos":0,"r":1},{"b":0,"g":0,"pos":1,"r":0}],"name":"colorize_6","node_position":{"x":722,"y":258},"type":"colorize"},{"amount":0.5,"name":"normal_map_0","node_position":{"x":895,"y":222},"type":"normal_map"},{"gradient":[{"b":0.119792,"g":0.119792,"pos":0,"r":0.119792},{"b":0,"g":0,"pos":1,"r":0}],"name":"colorize_3","node_position":{"x":762,"y":337},"type":"colorize"},{"amount":0.5,"blend_type":0,"name":"blend_2","node_position":{"x":537,"y":264},"type":"blend"},{"amount":0.5,"blend_type":0,"name":"blend_0","node_position":{"x":791.943726,"y":-5},"type":"blend"}]} \ No newline at end of file diff --git a/examples/wood_with_blood.ptex b/examples/wood_with_blood.ptex index beb016d..105bfdc 100644 --- a/examples/wood_with_blood.ptex +++ b/examples/wood_with_blood.ptex @@ -1 +1 @@ -{"connections":[{"from":"bricks_0","from_port":0,"to":"blend_0","to_port":0},{"from":"perlin_0","from_port":0,"to":"blend_0","to_port":1},{"from":"normal_map_0","from_port":0,"to":"Material","to_port":4},{"from":"blend_0","from_port":0,"to":"colorize_1","to_port":0},{"from":"perlin_1","from_port":0,"to":"colorize_2","to_port":0},{"from":"colorize_2","from_port":0,"to":"blend_1","to_port":0},{"from":"colorize_0","from_port":0,"to":"blend_1","to_port":1},{"from":"perlin_2","from_port":0,"to":"colorize_3","to_port":0},{"from":"colorize_3","from_port":0,"to":"blend_1","to_port":2},{"from":"blend_1","from_port":0,"to":"Material","to_port":0},{"from":"colorize_1","from_port":0,"to":"blend_2","to_port":1},{"from":"colorize_3","from_port":0,"to":"blend_2","to_port":0},{"from":"blend_2","from_port":0,"to":"Material","to_port":2},{"from":"blend_0","from_port":0,"to":"colorize_0","to_port":0},{"from":"colorize_3","from_port":0,"to":"colorize_4","to_port":0},{"from":"colorize_4","from_port":0,"to":"Material","to_port":1},{"from":"blend_0","from_port":0,"to":"colorize_5","to_port":0},{"from":"colorize_5","from_port":0,"to":"normal_map_0","to_port":0}],"nodes":[{"gradient":[{"b":0.828125,"g":0.828125,"pos":0,"r":0.828125},{"b":1,"g":1,"pos":1,"r":1}],"name":"colorize_1","node_position":{"x":495.633789,"y":220.5},"type":"colorize"},{"name":"Material","node_position":{"x":938,"y":96},"type":"material"},{"gradient":[{"b":0,"g":0,"pos":0.581818,"r":0},{"b":1,"g":1,"pos":1,"r":1}],"name":"colorize_3","node_position":{"x":487.633789,"y":65},"type":"colorize"},{"iterations":6,"name":"perlin_0","node_position":{"x":12,"y":225.5},"persistence":0.7,"scale_x":20,"scale_y":3,"type":"perlin"},{"bevel":0,"columns":5,"mortar":0.05,"name":"bricks_0","node_position":{"x":-1,"y":30.5},"row_offset":0.5,"rows":1,"type":"bricks"},{"gradient":[{"b":0,"g":0.336914,"pos":0,"r":0.598958},{"b":0,"g":0.454102,"pos":0.118182,"r":0.807292},{"b":0,"g":0.37793,"pos":0.245455,"r":0.671875},{"b":0,"g":0.427734,"pos":0.345455,"r":0.760417},{"b":0.017795,"g":0.488254,"pos":0.527273,"r":0.854167},{"b":0,"g":0.37793,"pos":0.645455,"r":0.671875},{"b":0,"g":0.439453,"pos":0.845455,"r":0.78125},{"b":0,"g":0.357422,"pos":1,"r":0.635417}],"name":"colorize_0","node_position":{"x":472,"y":-41.5},"type":"colorize"},{"iterations":7,"name":"perlin_1","node_position":{"x":110.633789,"y":-143.5},"persistence":0.55,"scale_x":4,"scale_y":4,"type":"perlin"},{"amount":0.55,"blend_type":0,"name":"blend_2","node_position":{"x":690.633789,"y":201.5},"type":"blend"},{"iterations":6,"name":"perlin_2","node_position":{"x":232.633789,"y":40},"persistence":0.65,"scale_x":4,"scale_y":4,"type":"perlin"},{"gradient":[{"b":0,"g":0,"pos":0,"r":0.515625},{"b":0,"g":0,"pos":0.145455,"r":0.25},{"b":0,"g":0,"pos":0.445455,"r":0.515625},{"b":0.007871,"g":0.007871,"pos":0.745455,"r":0.144176},{"b":0,"g":0,"pos":1,"r":0.322917}],"name":"colorize_2","node_position":{"x":487.633789,"y":-144.5},"type":"colorize"},{"gradient":[{"b":0,"g":0,"pos":0,"r":0},{"b":0,"g":0,"pos":1,"r":0}],"name":"colorize_4","node_position":{"x":732,"y":116},"type":"colorize"},{"amount":0.4,"name":"normal_map_0","node_position":{"x":724.633789,"y":345.5},"type":"normal_map"},{"amount":0.5,"blend_type":0,"name":"blend_1","node_position":{"x":707.633789,"y":-68},"type":"blend"},{"amount":1,"blend_type":2,"name":"blend_0","node_position":{"x":271,"y":306.5},"type":"blend"},{"gradient":[{"b":1,"g":1,"pos":0,"r":1},{"b":0,"g":0,"pos":1,"r":0}],"name":"colorize_5","node_position":{"x":503,"y":336.5},"type":"colorize"}]} \ No newline at end of file +{"connections":[{"from":"bricks_0","from_port":0,"to":"blend_0","to_port":0},{"from":"perlin_0","from_port":0,"to":"blend_0","to_port":1},{"from":"normal_map_0","from_port":0,"to":"Material","to_port":4},{"from":"perlin_1","from_port":0,"to":"colorize_2","to_port":0},{"from":"colorize_2","from_port":0,"to":"blend_1","to_port":0},{"from":"colorize_0","from_port":0,"to":"blend_1","to_port":1},{"from":"perlin_2","from_port":0,"to":"colorize_3","to_port":0},{"from":"colorize_3","from_port":0,"to":"blend_1","to_port":2},{"from":"blend_1","from_port":0,"to":"Material","to_port":0},{"from":"colorize_3","from_port":0,"to":"blend_2","to_port":0},{"from":"blend_2","from_port":0,"to":"Material","to_port":2},{"from":"blend_0","from_port":0,"to":"colorize_0","to_port":0},{"from":"blend_0","from_port":0,"to":"colorize_5","to_port":0},{"from":"colorize_5","from_port":0,"to":"normal_map_0","to_port":0},{"from":"uniform_1","from_port":0,"to":"Material","to_port":1},{"from":"uniform_0","from_port":0,"to":"blend_2","to_port":1}],"nodes":[{"name":"Material","node_position":{"x":938,"y":96},"type":"material"},{"gradient":[{"b":0,"g":0,"pos":0.563636,"r":0},{"b":1,"g":1,"pos":0.7,"r":1}],"name":"colorize_3","node_position":{"x":487.633789,"y":65},"type":"colorize"},{"iterations":6,"name":"perlin_0","node_position":{"x":12,"y":225.5},"persistence":0.7,"scale_x":20,"scale_y":3,"type":"perlin"},{"bevel":0,"columns":5,"mortar":0.05,"name":"bricks_0","node_position":{"x":-1,"y":30.5},"row_offset":0.5,"rows":1,"type":"bricks"},{"gradient":[{"b":0,"g":0.336914,"pos":0,"r":0.598958},{"b":0,"g":0.454102,"pos":0.118182,"r":0.807292},{"b":0,"g":0.37793,"pos":0.245455,"r":0.671875},{"b":0,"g":0.427734,"pos":0.345455,"r":0.760417},{"b":0.017795,"g":0.488254,"pos":0.527273,"r":0.854167},{"b":0,"g":0.37793,"pos":0.645455,"r":0.671875},{"b":0,"g":0.439453,"pos":0.845455,"r":0.78125},{"b":0,"g":0.357422,"pos":1,"r":0.635417}],"name":"colorize_0","node_position":{"x":472,"y":-41.5},"type":"colorize"},{"iterations":7,"name":"perlin_1","node_position":{"x":110.633789,"y":-143.5},"persistence":0.55,"scale_x":4,"scale_y":4,"type":"perlin"},{"amount":0.55,"blend_type":0,"name":"blend_2","node_position":{"x":690.633789,"y":201.5},"type":"blend"},{"iterations":6,"name":"perlin_2","node_position":{"x":232.633789,"y":40},"persistence":0.65,"scale_x":4,"scale_y":4,"type":"perlin"},{"gradient":[{"b":0,"g":0,"pos":0,"r":0.515625},{"b":0,"g":0,"pos":0.145455,"r":0.25},{"b":0,"g":0,"pos":0.445455,"r":0.515625},{"b":0.013184,"g":0.013184,"pos":0.745455,"r":0.28125},{"b":0,"g":0,"pos":1,"r":0.322917}],"name":"colorize_2","node_position":{"x":487.633789,"y":-144.5},"type":"colorize"},{"amount":0.4,"name":"normal_map_0","node_position":{"x":724.633789,"y":345.5},"type":"normal_map"},{"amount":0.5,"blend_type":0,"name":"blend_1","node_position":{"x":707.633789,"y":-68},"type":"blend"},{"amount":1,"blend_type":2,"name":"blend_0","node_position":{"x":271,"y":306.5},"type":"blend"},{"gradient":[{"b":1,"g":1,"pos":0,"r":1},{"b":0,"g":0,"pos":1,"r":0}],"name":"colorize_5","node_position":{"x":503,"y":336.5},"type":"colorize"},{"color":{"a":1,"b":0,"g":0,"r":0,"type":"Color"},"name":"uniform_1","node_position":{"x":753,"y":116},"type":"uniform"},{"color":{"a":1,"b":1,"g":1,"r":1,"type":"Color"},"name":"uniform_0","node_position":{"x":540,"y":234},"type":"uniform"}]} \ No newline at end of file diff --git a/examples/wooden_floor.ptex b/examples/wooden_floor.ptex index 2c32c76..cca3041 100644 --- a/examples/wooden_floor.ptex +++ b/examples/wooden_floor.ptex @@ -1 +1 @@ -{"connections":[{"from":"bricks_0","from_port":0,"to":"colorize_0","to_port":0},{"from":"colorize_0","from_port":0,"to":"blend_0","to_port":0},{"from":"perlin_0","from_port":0,"to":"blend_0","to_port":1},{"from":"blend_0","from_port":0,"to":"Material","to_port":0},{"from":"blend_0","from_port":0,"to":"colorize_1","to_port":0},{"from":"colorize_1","from_port":0,"to":"normal_map_0","to_port":0},{"from":"normal_map_0","from_port":0,"to":"Material","to_port":4},{"from":"blend_0","from_port":0,"to":"Material","to_port":2},{"from":"colorize_2","from_port":0,"to":"Material","to_port":1},{"from":"blend_0","from_port":0,"to":"colorize_2","to_port":0}],"nodes":[{"name":"Material","node_position":{"x":1036,"y":14},"type":"material"},{"gradient":[{"b":0,"g":0,"pos":0,"r":0},{"b":0,"g":0,"pos":1,"r":0}],"name":"colorize_2","node_position":{"x":862,"y":16.25},"type":"colorize"},{"amount":0.5,"name":"normal_map_0","node_position":{"x":891,"y":82.25},"type":"normal_map"},{"gradient":[{"b":1,"g":1,"pos":0,"r":1},{"b":0,"g":0,"pos":1,"r":0}],"name":"colorize_1","node_position":{"x":726,"y":100.25},"type":"colorize"},{"amount":0.5,"blend_type":0,"name":"blend_0","node_position":{"x":660,"y":-20.75},"type":"blend"},{"gradient":[{"b":0,"g":0,"pos":0,"r":0},{"b":0.213623,"g":0.391325,"pos":0.154545,"r":0.651042}],"name":"colorize_0","node_position":{"x":478,"y":-5.75},"type":"colorize"},{"bevel":0,"columns":1,"mortar":0.05,"name":"bricks_0","node_position":{"x":281,"y":-2.75},"row_offset":0.5,"rows":9,"type":"bricks"},{"iterations":7,"name":"perlin_0","node_position":{"x":391,"y":157.25},"persistence":0.75,"scale_x":4,"scale_y":20,"type":"perlin"}]} \ No newline at end of file +{"connections":[{"from":"bricks_0","from_port":0,"to":"colorize_0","to_port":0},{"from":"colorize_0","from_port":0,"to":"blend_0","to_port":0},{"from":"perlin_0","from_port":0,"to":"blend_0","to_port":1},{"from":"blend_0","from_port":0,"to":"Material","to_port":0},{"from":"blend_0","from_port":0,"to":"colorize_1","to_port":0},{"from":"colorize_1","from_port":0,"to":"normal_map_0","to_port":0},{"from":"normal_map_0","from_port":0,"to":"Material","to_port":4},{"from":"blend_0","from_port":0,"to":"Material","to_port":2},{"from":"uniform_0","from_port":0,"to":"Material","to_port":1}],"nodes":[{"name":"Material","node_position":{"x":1036,"y":14},"type":"material"},{"amount":0.5,"name":"normal_map_0","node_position":{"x":891,"y":82.25},"type":"normal_map"},{"gradient":[{"b":1,"g":1,"pos":0,"r":1},{"b":0,"g":0,"pos":1,"r":0}],"name":"colorize_1","node_position":{"x":726,"y":100.25},"type":"colorize"},{"amount":0.5,"blend_type":0,"name":"blend_0","node_position":{"x":660,"y":-20.75},"type":"blend"},{"gradient":[{"b":0,"g":0,"pos":0,"r":0},{"b":0.213623,"g":0.391325,"pos":0.145455,"r":0.651042}],"name":"colorize_0","node_position":{"x":478,"y":-5.75},"type":"colorize"},{"bevel":0,"columns":1,"mortar":0.05,"name":"bricks_0","node_position":{"x":281,"y":-2.75},"row_offset":0.5,"rows":9,"type":"bricks"},{"iterations":7,"name":"perlin_0","node_position":{"x":391,"y":157.25},"persistence":0.75,"scale_x":4,"scale_y":20,"type":"perlin"},{"color":{"a":1,"b":0,"g":0,"r":0,"type":"Color"},"name":"uniform_0","node_position":{"x":891,"y":-34},"type":"uniform"}]} \ No newline at end of file