2021-10-01 00:54:13 +02:00
|
|
|
tool
|
2021-10-04 11:54:52 +02:00
|
|
|
extends MMNode
|
2021-10-01 00:54:13 +02:00
|
|
|
|
2021-10-03 00:23:55 +02:00
|
|
|
var Patterns = preload("res://addons/mat_maker_gd/nodes/common/patterns.gd")
|
2021-10-01 23:24:08 +02:00
|
|
|
|
2021-10-01 00:54:13 +02:00
|
|
|
var image : Image
|
|
|
|
var tex : ImageTexture
|
|
|
|
|
|
|
|
export(Vector2) var bmin : Vector2 = Vector2(0.1, 0.1)
|
|
|
|
export(Vector2) var bmax : Vector2 = Vector2(1, 1)
|
|
|
|
|
|
|
|
export(bool) var refresh setget reff,reffg
|
|
|
|
|
|
|
|
func _ready():
|
|
|
|
pass
|
|
|
|
|
|
|
|
|
|
|
|
#float o39644_0_2_f : float = o39644_0.x
|
|
|
|
var seed_o39644 : int = 15005
|
|
|
|
var p_o39644_repeat : float = 1.000000000
|
|
|
|
var p_o39644_rows : float = 6.000000000
|
|
|
|
var p_o39644_columns : float = 3.000000000
|
|
|
|
var p_o39644_row_offset : float = 0.500000000
|
|
|
|
var p_o39644_mortar: float = 0.100000000
|
|
|
|
var p_o39644_bevel : float = 0.100000000
|
|
|
|
var p_o39644_round : float= 0.000000000
|
|
|
|
var p_o39644_corner : float = 0.420000000
|
|
|
|
|
|
|
|
|
|
|
|
var p_o3335_albedo_color_r : float = 1.000000000
|
|
|
|
var p_o3335_albedo_color_g : float = 1.000000000
|
|
|
|
var p_o3335_albedo_color_b : float = 1.000000000
|
|
|
|
var p_o3335_albedo_color_a : float = 1.000000000
|
|
|
|
var p_o3335_metallic : float = 1.000000000
|
|
|
|
var p_o3335_roughness : float = 1.000000000
|
|
|
|
var p_o3335_emission_energy : float = 1.000000000
|
|
|
|
var p_o3335_normal : float = 1.000000000
|
|
|
|
var p_o3335_ao : float = 1.000000000
|
|
|
|
var p_o3335_depth_scale : float = 0.500000000
|
|
|
|
var p_o3335_sss : float = 0.000000000
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
func gen() -> void:
|
|
|
|
if !image:
|
|
|
|
image = Image.new()
|
|
|
|
image.create(300, 300, false, Image.FORMAT_RGBA8)
|
|
|
|
|
|
|
|
if !tex:
|
|
|
|
tex = ImageTexture.new()
|
|
|
|
|
|
|
|
# var bmin : Vector2 = Vector2(0.1, 0.1)
|
|
|
|
# var bmax : Vector2 = Vector2(1, 1)
|
|
|
|
|
|
|
|
image.lock()
|
|
|
|
|
|
|
|
var w : float = image.get_width()
|
|
|
|
var h : float = image.get_width()
|
|
|
|
|
|
|
|
var pseed : float = randf() + randi()
|
|
|
|
|
|
|
|
for x in range(image.get_width()):
|
|
|
|
for y in range(image.get_height()):
|
|
|
|
var v : Vector2 = Vector2(x / w, y / h)
|
|
|
|
|
|
|
|
# var vb : Vector3 = brick_uv(v, bmin, bmax, pseed)
|
|
|
|
## var col : Color = Color(vb.x, vb.y, vb.z, 1)
|
|
|
|
#
|
|
|
|
# var col : Color = brick(v, bmin, bmax, 0.2, 0.2, 0.2)
|
|
|
|
# var cc : Color = Color(vb.x, vb.y, vb.z, 1)
|
|
|
|
# image.set_pixel(x, y, cc)
|
|
|
|
|
|
|
|
#Running Bond
|
|
|
|
# var brect : Color = bricks_rb(v, Vector2(p_o39644_columns, p_o39644_rows), p_o39644_repeat, p_o39644_row_offset);
|
|
|
|
|
|
|
|
#RunningBond2
|
|
|
|
# var brect : Color = bricks_rb2(v, Vector2(p_o39644_columns, p_o39644_rows), p_o39644_repeat, p_o39644_row_offset);
|
|
|
|
|
|
|
|
#HerringBone
|
|
|
|
# var brect : Color = bricks_hb(v, Vector2(p_o39644_columns, p_o39644_rows), p_o39644_repeat, p_o39644_row_offset);
|
|
|
|
|
|
|
|
#BasketWeave
|
|
|
|
# var brect : Color = bricks_bw(v, Vector2(p_o39644_columns, p_o39644_rows), p_o39644_repeat, p_o39644_row_offset);
|
|
|
|
|
|
|
|
#SpanishBond
|
2021-10-03 00:23:55 +02:00
|
|
|
var brect : Color = Patterns.bricks_sb(v, Vector2(p_o39644_columns, p_o39644_rows), p_o39644_repeat, p_o39644_row_offset);
|
2021-10-01 00:54:13 +02:00
|
|
|
|
|
|
|
|
|
|
|
# 1, 2
|
2021-10-03 00:23:55 +02:00
|
|
|
var fcolor : Color = Patterns.brick(v, Vector2(brect.r, brect.g), Vector2(brect.b, brect.a), p_o39644_mortar*1.0, p_o39644_round*1.0, max(0.001, p_o39644_bevel*1.0));
|
2021-10-01 00:54:13 +02:00
|
|
|
|
|
|
|
# image.set_pixel(x, y, brect)
|
|
|
|
# image.set_pixel(x, y, fcolor)
|
|
|
|
# image.set_pixel(x, y, Color(fcolor.r, fcolor.g, fcolor.b, 1))
|
|
|
|
|
|
|
|
#1
|
|
|
|
var rr : float = fcolor.r;
|
|
|
|
image.set_pixel(x, y, Color(rr,rr, rr, 1))
|
|
|
|
#
|
|
|
|
# # 3
|
|
|
|
# var yy : float = fcolor.g;
|
|
|
|
# image.set_pixel(x, y, Color(yy,yy, yy, 1))
|
|
|
|
#
|
|
|
|
# # 4
|
|
|
|
# var zz : float = fcolor.b;
|
|
|
|
# image.set_pixel(x, y, Color(zz,zz, zz, 1))
|
|
|
|
|
|
|
|
# 5
|
|
|
|
# var c : Vector3 = brick_uv(v, Vector2(brect.r, brect.g), Vector2(brect.b, brect.a), float(seed_o39644))
|
|
|
|
# image.set_pixel(x, y, Color(c.x, c.y, c.z, 1))
|
|
|
|
|
|
|
|
# 6
|
|
|
|
# var c : Vector3 = brick_corner_uv(v, Vector2(brect.r, brect.g), Vector2(brect.b, brect.a), p_o39644_mortar*1.0, p_o39644_corner, float(seed_o39644));
|
|
|
|
# image.set_pixel(x, y, Color(c.x, c.y, c.z, 1))
|
|
|
|
|
|
|
|
|
|
|
|
# 7
|
|
|
|
# var f : float = 0.5*(sign(brect.b-brect.r-brect.a+brect.g)+1.0);
|
|
|
|
# image.set_pixel(x, y, Color(f, f, f, 1))
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
image.unlock()
|
|
|
|
|
|
|
|
tex.create_from_image(image)
|
2021-10-04 15:14:41 +02:00
|
|
|
# texture = tex
|
2021-10-01 00:54:13 +02:00
|
|
|
|
|
|
|
|
|
|
|
func reffg():
|
|
|
|
return false
|
|
|
|
|
|
|
|
func reff(bb):
|
|
|
|
if bb:
|
|
|
|
gen()
|
|
|
|
|