Merge branch 'export_plugin' into add-return-type-hints

This commit is contained in:
Rodz Labs 2019-10-20 23:05:26 +02:00 committed by GitHub
commit 27aa683786
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
53 changed files with 1570 additions and 36 deletions

13
.gitignore vendored
View File

@ -1,8 +1,5 @@
.import
generated_image.png
addons/material_maker/models/Material.material
addons/material_maker/models/models.blend1
addons/material_maker/models/models.dae
addons/material_maker/models/models.dae.import
*.import
_build
# Files generated by Godot
.import/
# Compiled documentation
_build/

View File

View File

@ -20,7 +20,7 @@ func get_type_name() -> String:
return "Buffer"
func get_parameter_defs() -> Array:
return [ { name="size", type="size", first=4, last=11, default=4 } ]
return [ { name="size", type="size", first=4, last=12, default=4 } ]
func get_input_defs() -> Array:
return [ { name="in", type="rgba" } ]

View File

@ -5,7 +5,7 @@ class_name MMGenConvolution
var convolution_params : Dictionary = {}
func get_type() -> String:
return "shader"
return "convolution"
func get_type_name() -> String:
if convolution_params.has("name"):
@ -13,7 +13,11 @@ func get_type_name() -> String:
return .get_type_name()
func get_parameter_defs() -> Array:
return [ { name="size", type="size", first=4, last=11, default=4 } ]
var rv : Array = [ { name="size", type="size", first=4, last=11, default=4 } ]
if convolution_params.has("parameters"):
for p in convolution_params.parameters:
rv.push_back(p)
return rv
func get_input_defs() -> Array:
return [ { name="in", type=convolution_params.input_type } ]
@ -35,27 +39,132 @@ func _get_shader_code(uv : String, output_index : int, context : MMGenContext) -
var variant_index = context.get_variant(self, uv)
if variant_index == -1:
variant_index = context.get_variant(self, uv)
rv.code += "%s %s_%d = %s;\n" % [ types[convolution_params.output_type].type, genname, variant_index, types[convolution_params.output_type].init ]
# Calculate matrix
var errors = 0
var sum = [ 0.0, 0.0, 0.0, 0.0 ]
var matrix = []
var expr : Expression = null
var expr_variables : PoolStringArray
var expr_values : Array
var expr_variables_x_index : int
if convolution_params.has("matrix_function"):
expr = Expression.new()
expr_variables = PoolStringArray(["size"])
expr_values = [ pow(2, 4+parameters.size) ]
if convolution_params.has("parameters"):
for p in convolution_params.parameters:
expr_variables.push_back(p.name)
if parameters.has(p.name):
expr_values.push_back(parameters[p.name])
elif p.has("default"):
expr_values.push_back(p.default)
else:
expr_values.push_back(0)
errors += 1
print("No value for "+p.name)
expr_variables_x_index = expr_variables.size()
expr_variables.push_back("x")
expr_values.push_back(0)
expr_variables.push_back("y")
expr_values.push_back(0)
var error = expr.parse(convolution_params.matrix_function, expr_variables)
if error != OK:
print("Error in expression: "+expr.get_error_text())
return
for dy in range(-convolution_params.y, convolution_params.y+1):
var line = []
for dx in range(-convolution_params.x, convolution_params.x+1):
var coef = convolution_params.matrix[dy+convolution_params.y][dx+convolution_params.x]
var coef = 0.0
if convolution_params.has("matrix"):
coef = convolution_params.matrix[dy+convolution_params.y][dx+convolution_params.x]
elif expr != null:
expr_values[expr_variables_x_index] = dx
expr_values[expr_variables_x_index+1] = dy
coef = expr.execute(expr_values)
if typeof(coef) == TYPE_INT:
coef = float(coef)
if typeof(coef) == TYPE_REAL:
coef = Vector3(coef, coef, coef)
if typeof(coef) == TYPE_ARRAY:
coef = Vector3(coef[0], coef[1], coef[2])
var coef_str = "vec3(%.9f,%.9f,%.9f)" % [ coef.x, coef.y, coef.z ]
var uv_str = "((%s)+vec2(%.9f,%.9f))" % [ uv, dx*epsilon, dy*epsilon ]
var src_code = source.generator.get_shader_code(uv_str, source.output_index, context)
while src_code is GDScriptFunctionState:
src_code = yield(src_code, "completed")
rv.defs += src_code.defs
rv.code += src_code.code
rv.code += "%s_%d += %s*%s;\n" % [ genname, variant_index, coef_str, src_code[convolution_params.input_type] ]
for t in src_code.textures.keys():
rv.textures[t] = src_code.textures[t]
rv.rgb = "%s_%d" % [ genname, variant_index ]
match convolution_params.output_type:
"f":
if typeof(coef) == TYPE_REAL or convolution_params.input_type == "f":
sum[0] += coef
else:
errors += 1
"rgb":
if typeof(coef) == TYPE_REAL:
sum[0] += coef
sum[1] += coef
sum[2] += coef
coef = [ coef, coef, coef ]
if convolution_params.input_type != "f" and convolution_params.input_type != "rgb":
errors += 1
elif typeof(coef) == TYPE_ARRAY and coef.size() == 3:
if convolution_params.input_type == "f" or convolution_params.input_type == "rgb":
sum[0] += coef[0]
sum[1] += coef[1]
sum[2] += coef[2]
else:
errors += 1
else:
errors += 1
"rgba":
if typeof(coef) == TYPE_REAL:
sum[0] += coef
sum[1] += coef
sum[2] += coef
sum[3] += coef
coef = [ coef, coef, coef, coef ]
if convolution_params.input_type != "f" and convolution_params.input_type != "rgba":
errors += 1
elif typeof(coef) == TYPE_ARRAY and coef.size() == 4:
if convolution_params.input_type == "f" or convolution_params.input_type == "rgba":
sum[0] += coef[0]
sum[1] += coef[1]
sum[2] += coef[2]
sum[3] += coef[3]
else:
errors += 1
else:
errors += 1
line.push_back(coef)
matrix.push_back(line)
# Generate code
rv.code += "%s %s_%d = %s;\n" % [ types[convolution_params.output_type].type, genname, variant_index, types[convolution_params.output_type].init ]
if errors > 0:
pass
else:
if convolution_params.has("normalized") and convolution_params.normalized:
for i in range(sum.size()):
sum[i] = 1.0/sum[i]
else:
sum = [ 1.0, 1.0, 1.0, 1.0 ]
for dy in range(-convolution_params.y, convolution_params.y+1):
var line = matrix[dy+convolution_params.y]
for dx in range(-convolution_params.x, convolution_params.x+1):
var coef = line[dx+convolution_params.x]
var uv_str = "fract((%s)+vec2(%.9f,%.9f))" % [ uv, dx*epsilon, dy*epsilon ]
var src_code = source.generator.get_shader_code(uv_str, source.output_index, context)
while src_code is GDScriptFunctionState:
src_code = yield(src_code, "completed")
# Add global definitions
for d in src_code.globals:
if rv.globals.find(d) == -1:
rv.globals.push_back(d)
# Add generated definitions
rv.defs += src_code.defs
# Add generated code
rv.code += src_code.code
var coef_str : String
match convolution_params.output_type:
"f":
coef_str = "%.9f" % [ coef[0] * sum[0] ]
"rgb":
coef_str = "vec3(%.9f, %.9f, %.9f)" % [ coef[0] * sum[0], coef[1] * sum[1], coef[2] * sum[2] ]
"rgba":
coef_str = "vec4(%.9f, %.9f, %.9f, %.9f)" % [ coef[0] * sum[0], coef[1] * sum[1], coef[2] * sum[2], coef[3] * sum[3] ]
rv.code += "%s_%d += %s*%s;\n" % [ genname, variant_index, coef_str, src_code[convolution_params.input_type] ]
for t in src_code.textures.keys():
rv.textures[t] = src_code.textures[t]
rv[convolution_params.output_type] = "%s_%d" % [ genname, variant_index ]
return rv
func _serialize(data: Dictionary) -> Dictionary:

View File

@ -15,6 +15,15 @@ const TEXTURE_LIST = [
{ port=6, texture="depth_texture" }
]
# The minimum allowed texture size as a power-of-two exponent
const TEXTURE_SIZE_MIN = 4 # 16x16
# The maximum allowed texture size as a power-of-two exponent
const TEXTURE_SIZE_MAX = 12 # 4096x4096
# The default texture size as a power-of-two exponent
const TEXTURE_SIZE_DEFAULT = 10 # 1024x1024
func _ready() -> void:
texture_list = TEXTURE_LIST
for t in texture_list:
@ -39,7 +48,7 @@ func get_parameter_defs() -> Array:
{ name="normal_scale", label="Normal", type="float", min=0.0, max=8.0, step=0.05, default=1.0 },
{ name="ao_light_affect", label="Ambient occlusion", type="float", min=0.0, max=1.0, step=0.05, default=1.0 },
{ name="depth_scale", label="Depth", type="float", min=0.0, max=1.0, step=0.05, default=1.0 },
{ name="size", label="Size", type="size", first=7, last=11, default=9 }
{ name="size", label="Size", type="size", first=TEXTURE_SIZE_MIN, last=TEXTURE_SIZE_MAX, default=TEXTURE_SIZE_DEFAULT }
]
func get_input_defs() -> Array:
@ -56,9 +65,9 @@ func get_input_defs() -> Array:
func get_image_size() -> int:
var rv : int
if parameters.has("size"):
rv = int(pow(2, parameters.size+7))
rv = int(pow(2, parameters.size+TEXTURE_SIZE_MIN))
else:
rv = 512
rv = int(pow(2, TEXTURE_SIZE_DEFAULT))
return rv
func update_preview() -> void:
@ -89,6 +98,11 @@ func render_textures(renderer : MMGenRenderer) -> void:
result.release()
# To work, this must be set after calling `copy_to_texture()`
texture.flags |= ImageTexture.FLAG_ANISOTROPIC_FILTER
# Disable filtering for small textures, as they're considered to be used
# for a pixel art style
if texture.get_size().x <= 128:
texture.flags ^= ImageTexture.FLAG_FILTER
elif t.has("ports"):
var context : MMGenContext = MMGenContext.new(renderer)
var code = []
@ -114,6 +128,11 @@ func render_textures(renderer : MMGenRenderer) -> void:
# To work, this must be set after calling `copy_to_texture()`
texture.flags |= ImageTexture.FLAG_ANISOTROPIC_FILTER
# Disable filtering for small textures, as they're considered to be used
# for a pixel art style
if texture.get_size().x <= 128:
texture.flags ^= ImageTexture.FLAG_FILTER
generated_textures[t.texture] = texture
func update_materials(material_list) -> void:
@ -132,6 +151,10 @@ func get_generated_texture(slot, file_prefix = null) -> ImageTexture:
func update_spatial_material(m, file_prefix = null) -> void:
var texture
# Make the material double-sided for better visiblity in the preview
m.params_cull_mode = SpatialMaterial.CULL_DISABLED
m.albedo_color = parameters.albedo_color
m.albedo_texture = get_generated_texture("albedo", file_prefix)
m.metallic = parameters.metallic

View File

@ -48,6 +48,10 @@ func set_parameter(p, v) -> void:
.set_parameter(p, v)
emit_signal("parameter_changed", "__update_all__", null)
# get the list of outputs that depend on the input whose index is passed as parameter
func follow_input(input_index : int) -> Array:
return [ OutputPort.new(self, input_index % int(parameters.outputs)) ]
func source_changed(input_index : int) -> void:
notify_output_change(input_index % int(parameters.outputs))

View File

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="StreamTexture"
path="res://.import/icon.png-102e1e6732886eb945051a060861d203.stex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://addons/material_maker/icons/icon.png"
dest_files=[ "res://.import/icon.png-102e1e6732886eb945051a060861d203.stex" ]
[params]
compress/mode=0
compress/lossy_quality=0.7
compress/hdr_mode=0
compress/bptc_ldr=0
compress/normal_map=0
flags/repeat=0
flags/filter=true
flags/mipmaps=false
flags/anisotropic=false
flags/srgb=2
process/fix_alpha_border=true
process/premult_alpha=false
process/HDR_as_SRGB=false
process/invert_color=false
stream=false
size_limit=0
detect_3d=true
svg/scale=1.0

View File

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="StreamTexture"
path="res://.import/icons.svg-d2e3029ae68e242c75d7182ab1a1b6f4.stex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://addons/material_maker/icons/icons.svg"
dest_files=[ "res://.import/icons.svg-d2e3029ae68e242c75d7182ab1a1b6f4.stex" ]
[params]
compress/mode=0
compress/lossy_quality=0.7
compress/hdr_mode=0
compress/bptc_ldr=0
compress/normal_map=0
flags/repeat=0
flags/filter=true
flags/mipmaps=false
flags/anisotropic=false
flags/srgb=2
process/fix_alpha_border=true
process/premult_alpha=false
process/HDR_as_SRGB=false
process/invert_color=false
stream=false
size_limit=0
detect_3d=true
svg/scale=1.0

View File

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="StreamTexture"
path="res://.import/basketweave.png-ddc7255333c5e5a7dd86c5ffee57f9e7.stex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://addons/material_maker/library/base/basketweave.png"
dest_files=[ "res://.import/basketweave.png-ddc7255333c5e5a7dd86c5ffee57f9e7.stex" ]
[params]
compress/mode=0
compress/lossy_quality=0.7
compress/hdr_mode=0
compress/bptc_ldr=0
compress/normal_map=0
flags/repeat=0
flags/filter=true
flags/mipmaps=false
flags/anisotropic=false
flags/srgb=2
process/fix_alpha_border=true
process/premult_alpha=false
process/HDR_as_SRGB=false
process/invert_color=false
stream=false
size_limit=0
detect_3d=true
svg/scale=1.0

View File

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="StreamTexture"
path="res://.import/blend.png-de5a6cea1e8f3ff0945a2fce7002dc62.stex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://addons/material_maker/library/base/blend.png"
dest_files=[ "res://.import/blend.png-de5a6cea1e8f3ff0945a2fce7002dc62.stex" ]
[params]
compress/mode=0
compress/lossy_quality=0.7
compress/hdr_mode=0
compress/bptc_ldr=0
compress/normal_map=0
flags/repeat=0
flags/filter=true
flags/mipmaps=false
flags/anisotropic=false
flags/srgb=2
process/fix_alpha_border=true
process/premult_alpha=false
process/HDR_as_SRGB=false
process/invert_color=false
stream=false
size_limit=0
detect_3d=true
svg/scale=1.0

View File

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="StreamTexture"
path="res://.import/bricks.png-583b9bb0f262f11feafbfc2ba86ae651.stex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://addons/material_maker/library/base/bricks.png"
dest_files=[ "res://.import/bricks.png-583b9bb0f262f11feafbfc2ba86ae651.stex" ]
[params]
compress/mode=0
compress/lossy_quality=0.7
compress/hdr_mode=0
compress/bptc_ldr=0
compress/normal_map=0
flags/repeat=0
flags/filter=true
flags/mipmaps=false
flags/anisotropic=false
flags/srgb=2
process/fix_alpha_border=true
process/premult_alpha=false
process/HDR_as_SRGB=false
process/invert_color=false
stream=false
size_limit=0
detect_3d=true
svg/scale=1.0

View File

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="StreamTexture"
path="res://.import/buffer.png-a4d93561cdeac583fac8bbc5023d5b42.stex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://addons/material_maker/library/base/buffer.png"
dest_files=[ "res://.import/buffer.png-a4d93561cdeac583fac8bbc5023d5b42.stex" ]
[params]
compress/mode=0
compress/lossy_quality=0.7
compress/hdr_mode=0
compress/bptc_ldr=0
compress/normal_map=0
flags/repeat=0
flags/filter=true
flags/mipmaps=false
flags/anisotropic=false
flags/srgb=2
process/fix_alpha_border=true
process/premult_alpha=false
process/HDR_as_SRGB=false
process/invert_color=false
stream=false
size_limit=0
detect_3d=true
svg/scale=1.0

View File

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="StreamTexture"
path="res://.import/checkerboard.png-892f588e6288b2a79a58a0a98a6f439e.stex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://addons/material_maker/library/base/checkerboard.png"
dest_files=[ "res://.import/checkerboard.png-892f588e6288b2a79a58a0a98a6f439e.stex" ]
[params]
compress/mode=0
compress/lossy_quality=0.7
compress/hdr_mode=0
compress/bptc_ldr=0
compress/normal_map=0
flags/repeat=0
flags/filter=true
flags/mipmaps=false
flags/anisotropic=false
flags/srgb=2
process/fix_alpha_border=true
process/premult_alpha=false
process/HDR_as_SRGB=false
process/invert_color=false
stream=false
size_limit=0
detect_3d=true
svg/scale=1.0

View File

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="StreamTexture"
path="res://.import/colorize.png-67640df6f02137744d63ff74a3fc7fa3.stex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://addons/material_maker/library/base/colorize.png"
dest_files=[ "res://.import/colorize.png-67640df6f02137744d63ff74a3fc7fa3.stex" ]
[params]
compress/mode=0
compress/lossy_quality=0.7
compress/hdr_mode=0
compress/bptc_ldr=0
compress/normal_map=0
flags/repeat=0
flags/filter=true
flags/mipmaps=false
flags/anisotropic=false
flags/srgb=2
process/fix_alpha_border=true
process/premult_alpha=false
process/HDR_as_SRGB=false
process/invert_color=false
stream=false
size_limit=0
detect_3d=true
svg/scale=1.0

View File

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="StreamTexture"
path="res://.import/curved_star.png-3020fadc0a84e0b427da9df74c0fc324.stex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://addons/material_maker/library/base/curved_star.png"
dest_files=[ "res://.import/curved_star.png-3020fadc0a84e0b427da9df74c0fc324.stex" ]
[params]
compress/mode=0
compress/lossy_quality=0.7
compress/hdr_mode=0
compress/bptc_ldr=0
compress/normal_map=0
flags/repeat=0
flags/filter=true
flags/mipmaps=false
flags/anisotropic=false
flags/srgb=2
process/fix_alpha_border=true
process/premult_alpha=false
process/HDR_as_SRGB=false
process/invert_color=false
stream=false
size_limit=0
detect_3d=true
svg/scale=1.0

View File

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="StreamTexture"
path="res://.import/herringbone.png-18c08cda03aa50d8a08e090b92ed64d4.stex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://addons/material_maker/library/base/herringbone.png"
dest_files=[ "res://.import/herringbone.png-18c08cda03aa50d8a08e090b92ed64d4.stex" ]
[params]
compress/mode=0
compress/lossy_quality=0.7
compress/hdr_mode=0
compress/bptc_ldr=0
compress/normal_map=0
flags/repeat=0
flags/filter=true
flags/mipmaps=false
flags/anisotropic=false
flags/srgb=2
process/fix_alpha_border=true
process/premult_alpha=false
process/HDR_as_SRGB=false
process/invert_color=false
stream=false
size_limit=0
detect_3d=true
svg/scale=1.0

View File

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="StreamTexture"
path="res://.import/invert.png-e3453556404b88640391d4ade9dd1cee.stex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://addons/material_maker/library/base/invert.png"
dest_files=[ "res://.import/invert.png-e3453556404b88640391d4ade9dd1cee.stex" ]
[params]
compress/mode=0
compress/lossy_quality=0.7
compress/hdr_mode=0
compress/bptc_ldr=0
compress/normal_map=0
flags/repeat=0
flags/filter=true
flags/mipmaps=false
flags/anisotropic=false
flags/srgb=2
process/fix_alpha_border=true
process/premult_alpha=false
process/HDR_as_SRGB=false
process/invert_color=false
stream=false
size_limit=0
detect_3d=true
svg/scale=1.0

View File

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="StreamTexture"
path="res://.import/kaleidoscope.png-ba8dec9e05ba2872789c0c845838a1c7.stex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://addons/material_maker/library/base/kaleidoscope.png"
dest_files=[ "res://.import/kaleidoscope.png-ba8dec9e05ba2872789c0c845838a1c7.stex" ]
[params]
compress/mode=0
compress/lossy_quality=0.7
compress/hdr_mode=0
compress/bptc_ldr=0
compress/normal_map=0
flags/repeat=0
flags/filter=true
flags/mipmaps=false
flags/anisotropic=false
flags/srgb=2
process/fix_alpha_border=true
process/premult_alpha=false
process/HDR_as_SRGB=false
process/invert_color=false
stream=false
size_limit=0
detect_3d=true
svg/scale=1.0

View File

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="StreamTexture"
path="res://.import/mirror.png-ea85aa8b488fd5f371bbf484b1c4adca.stex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://addons/material_maker/library/base/mirror.png"
dest_files=[ "res://.import/mirror.png-ea85aa8b488fd5f371bbf484b1c4adca.stex" ]
[params]
compress/mode=0
compress/lossy_quality=0.7
compress/hdr_mode=0
compress/bptc_ldr=0
compress/normal_map=0
flags/repeat=0
flags/filter=true
flags/mipmaps=false
flags/anisotropic=false
flags/srgb=2
process/fix_alpha_border=true
process/premult_alpha=false
process/HDR_as_SRGB=false
process/invert_color=false
stream=false
size_limit=0
detect_3d=true
svg/scale=1.0

View File

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="StreamTexture"
path="res://.import/noise.png-c8e655a746b076cc4be5b8714bad5378.stex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://addons/material_maker/library/base/noise.png"
dest_files=[ "res://.import/noise.png-c8e655a746b076cc4be5b8714bad5378.stex" ]
[params]
compress/mode=0
compress/lossy_quality=0.7
compress/hdr_mode=0
compress/bptc_ldr=0
compress/normal_map=0
flags/repeat=0
flags/filter=true
flags/mipmaps=false
flags/anisotropic=false
flags/srgb=2
process/fix_alpha_border=true
process/premult_alpha=false
process/HDR_as_SRGB=false
process/invert_color=false
stream=false
size_limit=0
detect_3d=true
svg/scale=1.0

View File

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="StreamTexture"
path="res://.import/normal_map.png-5c8d8528f08ff1109f6e59d6e5d115f7.stex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://addons/material_maker/library/base/normal_map.png"
dest_files=[ "res://.import/normal_map.png-5c8d8528f08ff1109f6e59d6e5d115f7.stex" ]
[params]
compress/mode=0
compress/lossy_quality=0.7
compress/hdr_mode=0
compress/bptc_ldr=0
compress/normal_map=0
flags/repeat=0
flags/filter=true
flags/mipmaps=false
flags/anisotropic=false
flags/srgb=2
process/fix_alpha_border=true
process/premult_alpha=false
process/HDR_as_SRGB=false
process/invert_color=false
stream=false
size_limit=0
detect_3d=true
svg/scale=1.0

View File

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="StreamTexture"
path="res://.import/pattern.png-5f7bf5027b1ccb81c2c98cb7be50bfc9.stex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://addons/material_maker/library/base/pattern.png"
dest_files=[ "res://.import/pattern.png-5f7bf5027b1ccb81c2c98cb7be50bfc9.stex" ]
[params]
compress/mode=0
compress/lossy_quality=0.7
compress/hdr_mode=0
compress/bptc_ldr=0
compress/normal_map=0
flags/repeat=0
flags/filter=true
flags/mipmaps=false
flags/anisotropic=false
flags/srgb=2
process/fix_alpha_border=true
process/premult_alpha=false
process/HDR_as_SRGB=false
process/invert_color=false
stream=false
size_limit=0
detect_3d=true
svg/scale=1.0

View File

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="StreamTexture"
path="res://.import/perlin.png-d9d372a99b4e4be96f80c34ea82dfa53.stex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://addons/material_maker/library/base/perlin.png"
dest_files=[ "res://.import/perlin.png-d9d372a99b4e4be96f80c34ea82dfa53.stex" ]
[params]
compress/mode=0
compress/lossy_quality=0.7
compress/hdr_mode=0
compress/bptc_ldr=0
compress/normal_map=0
flags/repeat=0
flags/filter=true
flags/mipmaps=false
flags/anisotropic=false
flags/srgb=2
process/fix_alpha_border=true
process/premult_alpha=false
process/HDR_as_SRGB=false
process/invert_color=false
stream=false
size_limit=0
detect_3d=true
svg/scale=1.0

View File

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="StreamTexture"
path="res://.import/polygon.png-59db9210d34dd34a1f100933887eadc1.stex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://addons/material_maker/library/base/polygon.png"
dest_files=[ "res://.import/polygon.png-59db9210d34dd34a1f100933887eadc1.stex" ]
[params]
compress/mode=0
compress/lossy_quality=0.7
compress/hdr_mode=0
compress/bptc_ldr=0
compress/normal_map=0
flags/repeat=0
flags/filter=true
flags/mipmaps=false
flags/anisotropic=false
flags/srgb=2
process/fix_alpha_border=true
process/premult_alpha=false
process/HDR_as_SRGB=false
process/invert_color=false
stream=false
size_limit=0
detect_3d=true
svg/scale=1.0

View File

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="StreamTexture"
path="res://.import/rainbow.png-7855abe3b25d53c6784f97ecef5bd892.stex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://addons/material_maker/library/base/rainbow.png"
dest_files=[ "res://.import/rainbow.png-7855abe3b25d53c6784f97ecef5bd892.stex" ]
[params]
compress/mode=0
compress/lossy_quality=0.7
compress/hdr_mode=0
compress/bptc_ldr=0
compress/normal_map=0
flags/repeat=0
flags/filter=true
flags/mipmaps=false
flags/anisotropic=false
flags/srgb=2
process/fix_alpha_border=true
process/premult_alpha=false
process/HDR_as_SRGB=false
process/invert_color=false
stream=false
size_limit=0
detect_3d=true
svg/scale=1.0

View File

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="StreamTexture"
path="res://.import/rays.png-a05fa10b3876c83fc4c42ef219045b96.stex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://addons/material_maker/library/base/rays.png"
dest_files=[ "res://.import/rays.png-a05fa10b3876c83fc4c42ef219045b96.stex" ]
[params]
compress/mode=0
compress/lossy_quality=0.7
compress/hdr_mode=0
compress/bptc_ldr=0
compress/normal_map=0
flags/repeat=0
flags/filter=true
flags/mipmaps=false
flags/anisotropic=false
flags/srgb=2
process/fix_alpha_border=true
process/premult_alpha=false
process/HDR_as_SRGB=false
process/invert_color=false
stream=false
size_limit=0
detect_3d=true
svg/scale=1.0

View File

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="StreamTexture"
path="res://.import/runes.png-398bdedd97808b43f37b6f633d4f1346.stex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://addons/material_maker/library/base/runes.png"
dest_files=[ "res://.import/runes.png-398bdedd97808b43f37b6f633d4f1346.stex" ]
[params]
compress/mode=0
compress/lossy_quality=0.7
compress/hdr_mode=0
compress/bptc_ldr=0
compress/normal_map=0
flags/repeat=0
flags/filter=true
flags/mipmaps=false
flags/anisotropic=false
flags/srgb=2
process/fix_alpha_border=true
process/premult_alpha=false
process/HDR_as_SRGB=false
process/invert_color=false
stream=false
size_limit=0
detect_3d=true
svg/scale=1.0

View File

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="StreamTexture"
path="res://.import/spanishbond.png-b99aceb87e2fc0c3df66e89196d478f3.stex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://addons/material_maker/library/base/spanishbond.png"
dest_files=[ "res://.import/spanishbond.png-b99aceb87e2fc0c3df66e89196d478f3.stex" ]
[params]
compress/mode=0
compress/lossy_quality=0.7
compress/hdr_mode=0
compress/bptc_ldr=0
compress/normal_map=0
flags/repeat=0
flags/filter=true
flags/mipmaps=false
flags/anisotropic=false
flags/srgb=2
process/fix_alpha_border=true
process/premult_alpha=false
process/HDR_as_SRGB=false
process/invert_color=false
stream=false
size_limit=0
detect_3d=true
svg/scale=1.0

View File

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="StreamTexture"
path="res://.import/star.png-1b9e738c7f672163ce67b32a4dc57c9c.stex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://addons/material_maker/library/base/star.png"
dest_files=[ "res://.import/star.png-1b9e738c7f672163ce67b32a4dc57c9c.stex" ]
[params]
compress/mode=0
compress/lossy_quality=0.7
compress/hdr_mode=0
compress/bptc_ldr=0
compress/normal_map=0
flags/repeat=0
flags/filter=true
flags/mipmaps=false
flags/anisotropic=false
flags/srgb=2
process/fix_alpha_border=true
process/premult_alpha=false
process/HDR_as_SRGB=false
process/invert_color=false
stream=false
size_limit=0
detect_3d=true
svg/scale=1.0

View File

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="StreamTexture"
path="res://.import/switch.png-093233239b6e665f0a8d5b822971ec41.stex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://addons/material_maker/library/base/switch.png"
dest_files=[ "res://.import/switch.png-093233239b6e665f0a8d5b822971ec41.stex" ]
[params]
compress/mode=0
compress/lossy_quality=0.7
compress/hdr_mode=0
compress/bptc_ldr=0
compress/normal_map=0
flags/repeat=0
flags/filter=true
flags/mipmaps=false
flags/anisotropic=false
flags/srgb=2
process/fix_alpha_border=true
process/premult_alpha=false
process/HDR_as_SRGB=false
process/invert_color=false
stream=false
size_limit=0
detect_3d=true
svg/scale=1.0

View File

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="StreamTexture"
path="res://.import/tiles.png-abfab7aef58ed1a8101c6c9d00e1be9c.stex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://addons/material_maker/library/base/tiles.png"
dest_files=[ "res://.import/tiles.png-abfab7aef58ed1a8101c6c9d00e1be9c.stex" ]
[params]
compress/mode=0
compress/lossy_quality=0.7
compress/hdr_mode=0
compress/bptc_ldr=0
compress/normal_map=0
flags/repeat=0
flags/filter=true
flags/mipmaps=false
flags/anisotropic=false
flags/srgb=2
process/fix_alpha_border=true
process/premult_alpha=false
process/HDR_as_SRGB=false
process/invert_color=false
stream=false
size_limit=0
detect_3d=true
svg/scale=1.0

View File

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="StreamTexture"
path="res://.import/transform.png-2dbbcc18ca6e7180822aa501f618f5d4.stex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://addons/material_maker/library/base/transform.png"
dest_files=[ "res://.import/transform.png-2dbbcc18ca6e7180822aa501f618f5d4.stex" ]
[params]
compress/mode=0
compress/lossy_quality=0.7
compress/hdr_mode=0
compress/bptc_ldr=0
compress/normal_map=0
flags/repeat=0
flags/filter=true
flags/mipmaps=false
flags/anisotropic=false
flags/srgb=2
process/fix_alpha_border=true
process/premult_alpha=false
process/HDR_as_SRGB=false
process/invert_color=false
stream=false
size_limit=0
detect_3d=true
svg/scale=1.0

View File

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="StreamTexture"
path="res://.import/truchet.png-9b877d5a684dc416a155a5877a054ad4.stex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://addons/material_maker/library/base/truchet.png"
dest_files=[ "res://.import/truchet.png-9b877d5a684dc416a155a5877a054ad4.stex" ]
[params]
compress/mode=0
compress/lossy_quality=0.7
compress/hdr_mode=0
compress/bptc_ldr=0
compress/normal_map=0
flags/repeat=0
flags/filter=true
flags/mipmaps=false
flags/anisotropic=false
flags/srgb=2
process/fix_alpha_border=true
process/premult_alpha=false
process/HDR_as_SRGB=false
process/invert_color=false
stream=false
size_limit=0
detect_3d=true
svg/scale=1.0

View File

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="StreamTexture"
path="res://.import/voronoi.png-78740dcb70eee6473e84fb8acb3a7145.stex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://addons/material_maker/library/base/voronoi.png"
dest_files=[ "res://.import/voronoi.png-78740dcb70eee6473e84fb8acb3a7145.stex" ]
[params]
compress/mode=0
compress/lossy_quality=0.7
compress/hdr_mode=0
compress/bptc_ldr=0
compress/normal_map=0
flags/repeat=0
flags/filter=true
flags/mipmaps=false
flags/anisotropic=false
flags/srgb=2
process/fix_alpha_border=true
process/premult_alpha=false
process/HDR_as_SRGB=false
process/invert_color=false
stream=false
size_limit=0
detect_3d=true
svg/scale=1.0

View File

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="StreamTexture"
path="res://.import/warp.png-8045f04cbf6dd8cd8c45d2d0acfa0ff3.stex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://addons/material_maker/library/base/warp.png"
dest_files=[ "res://.import/warp.png-8045f04cbf6dd8cd8c45d2d0acfa0ff3.stex" ]
[params]
compress/mode=0
compress/lossy_quality=0.7
compress/hdr_mode=0
compress/bptc_ldr=0
compress/normal_map=0
flags/repeat=0
flags/filter=true
flags/mipmaps=false
flags/anisotropic=false
flags/srgb=2
process/fix_alpha_border=true
process/premult_alpha=false
process/HDR_as_SRGB=false
process/invert_color=false
stream=false
size_limit=0
detect_3d=true
svg/scale=1.0

View File

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="StreamTexture"
path="res://.import/weave.png-dee2823efdadab597d2a5cf5993fd073.stex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://addons/material_maker/library/base/weave.png"
dest_files=[ "res://.import/weave.png-dee2823efdadab597d2a5cf5993fd073.stex" ]
[params]
compress/mode=0
compress/lossy_quality=0.7
compress/hdr_mode=0
compress/bptc_ldr=0
compress/normal_map=0
flags/repeat=0
flags/filter=true
flags/mipmaps=false
flags/anisotropic=false
flags/srgb=2
process/fix_alpha_border=true
process/premult_alpha=false
process/HDR_as_SRGB=false
process/invert_color=false
stream=false
size_limit=0
detect_3d=true
svg/scale=1.0

View File

@ -197,7 +197,7 @@ func load_material() -> void:
dialog.rect_min_size = Vector2(500, 500)
dialog.access = FileDialog.ACCESS_FILESYSTEM
dialog.mode = FileDialog.MODE_OPEN_FILES
dialog.add_filter("*.ptex;Procedural textures file")
dialog.add_filter("*.ptex;Procedural Textures File")
dialog.connect("files_selected", self, "do_load_materials")
dialog.popup_centered()
@ -236,7 +236,7 @@ func save_material_as() -> void:
dialog.rect_min_size = Vector2(500, 500)
dialog.access = FileDialog.ACCESS_FILESYSTEM
dialog.mode = FileDialog.MODE_SAVE_FILE
dialog.add_filter("*.ptex;Procedural textures file")
dialog.add_filter("*.ptex;Procedural Textures File")
dialog.connect("file_selected", graph_edit, "save_file")
dialog.popup_centered()

View File

@ -0,0 +1 @@
{"connections":[{"from":"buffer","from_port":0,"to":"blurx_convolution","to_port":0},{"from":"buffer_2","from_port":0,"to":"blurx_convolution_2","to_port":0},{"from":"switch","from_port":0,"to":"buffer_2","to_port":0},{"from":"gen_inputs","from_port":0,"to":"buffer","to_port":0},{"from":"gen_inputs","from_port":0,"to":"switch","to_port":1},{"from":"blurx_convolution","from_port":0,"to":"switch","to_port":0},{"from":"switch_2","from_port":0,"to":"gen_outputs","to_port":0},{"from":"blurx_convolution_2","from_port":0,"to":"switch_2","to_port":0},{"from":"switch","from_port":0,"to":"switch_2","to_port":1}],"label":"Gaussian Blur","name":"gaussian_blur","node_position":{"x":0,"y":0},"nodes":[{"convolution_params":{"input_type":"rgba","matrix_function":"exp(-0.5*(pow(x/sigma, 2.0)))/(6.28318530718 *sigma*sigma)","normalized":true,"output_type":"rgba","parameters":[{"max":50,"min":0.05,"name":"sigma","type":"float"}],"x":50,"y":0},"name":"blurx_convolution","node_position":{"x":-407.5,"y":-217.5},"parameters":{"sigma":10.175,"size":5},"type":"convolution"},{"name":"buffer_2","node_position":{"x":-408.875,"y":-90.625},"parameters":{"size":5},"type":"buffer"},{"convolution_params":{"input_type":"rgba","matrix_function":"exp(-0.5*(pow(y/sigma, 2.0)))/(6.28318530718 *sigma*sigma)","normalized":true,"output_type":"rgba","parameters":[{"max":50,"min":0.05,"name":"sigma","type":"float"}],"x":0,"y":50},"name":"blurx_convolution_2","node_position":{"x":-407.125,"y":-44.375},"parameters":{"sigma":10.175,"size":5},"type":"convolution"},{"name":"switch","node_position":{"x":-437.452393,"y":-147.166656},"parameters":{"choices":2,"outputs":1,"source":0},"type":"switch"},{"name":"switch_2","node_position":{"x":-323.452393,"y":-173.666656},"parameters":{"choices":2,"outputs":1,"source":0},"type":"switch"},{"name":"buffer","node_position":{"x":-408.25,"y":-265.75},"parameters":{"size":5},"type":"buffer"},{"name":"gen_parameters","node_position":{"x":-438.666626,"y":-391.666656},"parameters":{"param0":5,"param1":10.175,"param2":0},"type":"remote","widgets":[{"label":"Grid size:","linked_widgets":[{"node":"buffer","widget":"size"},{"node":"blurx_convolution","widget":"size"},{"node":"buffer_2","widget":"size"},{"node":"blurx_convolution_2","widget":"size"}],"type":"linked_control"},{"label":"Sigma:","linked_widgets":[{"node":"blurx_convolution","widget":"sigma"},{"node":"blurx_convolution_2","widget":"sigma"}],"type":"linked_control"},{"configurations":{"Both":[{"node":"switch","value":0,"widget":"source"},{"node":"switch_2","value":0,"widget":"source"}],"X":[{"node":"switch","value":0,"widget":"source"},{"node":"switch_2","value":1,"widget":"source"}],"Y":[{"node":"switch","value":1,"widget":"source"},{"node":"switch_2","value":0,"widget":"source"}]},"label":"Direction:","linked_widgets":[{"node":"switch","widget":"source"},{"node":"switch_2","widget":"source"}],"type":"config_control"}]},{"name":"gen_inputs","node_position":{"x":-738.666626,"y":-190.392853},"parameters":{},"ports":[{"name":"port0","type":"rgba"}],"type":"ios"},{"name":"gen_outputs","node_position":{"x":-23.452393,"y":-190.392853},"parameters":{},"ports":[{"name":"port0","type":"rgba"}],"type":"ios"}],"parameters":{"param0":5,"param2":0},"type":"graph"}

View File

@ -24,7 +24,11 @@ func _on_TextureButton_pressed() -> void:
dialog.rect_min_size = Vector2(500, 500)
dialog.access = FileDialog.ACCESS_FILESYSTEM
dialog.mode = FileDialog.MODE_OPEN_FILE
dialog.add_filter("*.png;PNG image")
dialog.add_filter("*.jpg;JPG image")
dialog.add_filter("*.bmp;BMP Image")
dialog.add_filter("*.hdr;Radiance HDR Image")
dialog.add_filter("*.jpg,*.jpeg;JPEG Image")
dialog.add_filter("*.png;PNG Image")
dialog.add_filter("*.tga;TGA Image")
dialog.add_filter("*.webp;WebP Image")
dialog.connect("file_selected", self, "set_texture")
dialog.popup_centered()

View File

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="StreamTexture"
path="res://.import/godot_logo.png-c9bdd957bdf7bbb36b171f76b9548159.stex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://addons/material_maker/nodes/image/godot_logo.png"
dest_files=[ "res://.import/godot_logo.png-c9bdd957bdf7bbb36b171f76b9548159.stex" ]
[params]
compress/mode=0
compress/lossy_quality=0.7
compress/hdr_mode=0
compress/bptc_ldr=0
compress/normal_map=0
flags/repeat=0
flags/filter=true
flags/mipmaps=false
flags/anisotropic=false
flags/srgb=2
process/fix_alpha_border=true
process/premult_alpha=false
process/HDR_as_SRGB=false
process/invert_color=false
stream=false
size_limit=0
detect_3d=true
svg/scale=1.0

View File

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="StreamTexture"
path="res://.import/epping_forest_01.hdr-3c7ece2e0e9ac3d51721fb81f0f4853b.stex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://addons/material_maker/preview/panoramas/epping_forest_01.hdr"
dest_files=[ "res://.import/epping_forest_01.hdr-3c7ece2e0e9ac3d51721fb81f0f4853b.stex" ]
[params]
compress/mode=0
compress/lossy_quality=0.7
compress/hdr_mode=0
compress/bptc_ldr=0
compress/normal_map=0
flags/repeat=0
flags/filter=true
flags/mipmaps=false
flags/anisotropic=false
flags/srgb=2
process/fix_alpha_border=true
process/premult_alpha=false
process/HDR_as_SRGB=false
process/invert_color=false
stream=false
size_limit=0
detect_3d=true
svg/scale=1.0

View File

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="StreamTexture"
path="res://.import/moonless_golf.hdr-c2b87e50e421ae96ea3d3433aa67ddb8.stex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://addons/material_maker/preview/panoramas/moonless_golf.hdr"
dest_files=[ "res://.import/moonless_golf.hdr-c2b87e50e421ae96ea3d3433aa67ddb8.stex" ]
[params]
compress/mode=0
compress/lossy_quality=0.7
compress/hdr_mode=0
compress/bptc_ldr=0
compress/normal_map=0
flags/repeat=0
flags/filter=true
flags/mipmaps=false
flags/anisotropic=false
flags/srgb=2
process/fix_alpha_border=true
process/premult_alpha=false
process/HDR_as_SRGB=false
process/invert_color=false
stream=false
size_limit=0
detect_3d=true
svg/scale=1.0

View File

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="StreamTexture"
path="res://.import/facebook.png-d6541f01553822073e02f5ea7097e5ae.stex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://addons/material_maker/widgets/about/facebook.png"
dest_files=[ "res://.import/facebook.png-d6541f01553822073e02f5ea7097e5ae.stex" ]
[params]
compress/mode=0
compress/lossy_quality=0.7
compress/hdr_mode=0
compress/bptc_ldr=0
compress/normal_map=0
flags/repeat=0
flags/filter=true
flags/mipmaps=false
flags/anisotropic=false
flags/srgb=2
process/fix_alpha_border=true
process/premult_alpha=false
process/HDR_as_SRGB=false
process/invert_color=false
stream=false
size_limit=0
detect_3d=true
svg/scale=1.0

View File

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="StreamTexture"
path="res://.import/github.png-c3c9436a2e1eef25f40ef99b78c5da4f.stex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://addons/material_maker/widgets/about/github.png"
dest_files=[ "res://.import/github.png-c3c9436a2e1eef25f40ef99b78c5da4f.stex" ]
[params]
compress/mode=0
compress/lossy_quality=0.7
compress/hdr_mode=0
compress/bptc_ldr=0
compress/normal_map=0
flags/repeat=0
flags/filter=true
flags/mipmaps=false
flags/anisotropic=false
flags/srgb=2
process/fix_alpha_border=true
process/premult_alpha=false
process/HDR_as_SRGB=false
process/invert_color=false
stream=false
size_limit=0
detect_3d=true
svg/scale=1.0

View File

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="StreamTexture"
path="res://.import/itchio.png-843a9b6da99f3eb7fe1208aac99ca1e1.stex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://addons/material_maker/widgets/about/itchio.png"
dest_files=[ "res://.import/itchio.png-843a9b6da99f3eb7fe1208aac99ca1e1.stex" ]
[params]
compress/mode=0
compress/lossy_quality=0.7
compress/hdr_mode=0
compress/bptc_ldr=0
compress/normal_map=0
flags/repeat=0
flags/filter=true
flags/mipmaps=false
flags/anisotropic=false
flags/srgb=2
process/fix_alpha_border=true
process/premult_alpha=false
process/HDR_as_SRGB=false
process/invert_color=false
stream=false
size_limit=0
detect_3d=true
svg/scale=1.0

View File

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="StreamTexture"
path="res://.import/twitter.png-92365b56691691341dfb4664b3e814c1.stex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://addons/material_maker/widgets/about/twitter.png"
dest_files=[ "res://.import/twitter.png-92365b56691691341dfb4664b3e814c1.stex" ]
[params]
compress/mode=0
compress/lossy_quality=0.7
compress/hdr_mode=0
compress/bptc_ldr=0
compress/normal_map=0
flags/repeat=0
flags/filter=true
flags/mipmaps=false
flags/anisotropic=false
flags/srgb=2
process/fix_alpha_border=true
process/premult_alpha=false
process/HDR_as_SRGB=false
process/invert_color=false
stream=false
size_limit=0
detect_3d=true
svg/scale=1.0

View File

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="StreamTexture"
path="res://.import/youtube.png-a5255c0baea33f3cd16993863a3f666b.stex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://addons/material_maker/widgets/about/youtube.png"
dest_files=[ "res://.import/youtube.png-a5255c0baea33f3cd16993863a3f666b.stex" ]
[params]
compress/mode=0
compress/lossy_quality=0.7
compress/hdr_mode=0
compress/bptc_ldr=0
compress/normal_map=0
flags/repeat=0
flags/filter=true
flags/mipmaps=false
flags/anisotropic=false
flags/srgb=2
process/fix_alpha_border=true
process/premult_alpha=false
process/HDR_as_SRGB=false
process/invert_color=false
stream=false
size_limit=0
detect_3d=true
svg/scale=1.0

View File

@ -1,3 +1,4 @@
tool
extends Popup
signal item_double_clicked(generator)

View File

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="StreamTexture"
path="res://.import/icon.png-ebbfadfa3af9179efc71c0bb44b43eb9.stex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://addons/material_maker/widgets/icon.png"
dest_files=[ "res://.import/icon.png-ebbfadfa3af9179efc71c0bb44b43eb9.stex" ]
[params]
compress/mode=0
compress/lossy_quality=0.7
compress/hdr_mode=0
compress/bptc_ldr=0
compress/normal_map=0
flags/repeat=0
flags/filter=true
flags/mipmaps=false
flags/anisotropic=false
flags/srgb=2
process/fix_alpha_border=true
process/premult_alpha=false
process/HDR_as_SRGB=false
process/invert_color=false
stream=false
size_limit=0
detect_3d=true
svg/scale=1.0

View File

@ -3,7 +3,7 @@ extends HBoxContainer
var size_first = 0
var size_last = 12
var size_default = 8
var size_default = 10
func _ready() -> void:
update_size_configuration()

34
rodz_labs_logo.png.import Normal file
View File

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="StreamTexture"
path="res://.import/rodz_labs_logo.png-c7a6eb91a5288e0860988f40f44de55a.stex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://rodz_labs_logo.png"
dest_files=[ "res://.import/rodz_labs_logo.png-c7a6eb91a5288e0860988f40f44de55a.stex" ]
[params]
compress/mode=0
compress/lossy_quality=0.7
compress/hdr_mode=0
compress/bptc_ldr=0
compress/normal_map=0
flags/repeat=0
flags/filter=true
flags/mipmaps=false
flags/anisotropic=false
flags/srgb=2
process/fix_alpha_border=true
process/premult_alpha=false
process/HDR_as_SRGB=false
process/invert_color=false
stream=false
size_limit=0
detect_3d=true
svg/scale=1.0

34
test.png.import Normal file
View File

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="StreamTexture"
path="res://.import/test.png-2b0b935732229e5bd5e655f2644b2498.stex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://test.png"
dest_files=[ "res://.import/test.png-2b0b935732229e5bd5e655f2644b2498.stex" ]
[params]
compress/mode=0
compress/lossy_quality=0.7
compress/hdr_mode=0
compress/bptc_ldr=0
compress/normal_map=0
flags/repeat=0
flags/filter=true
flags/mipmaps=false
flags/anisotropic=false
flags/srgb=2
process/fix_alpha_border=true
process/premult_alpha=false
process/HDR_as_SRGB=false
process/invert_color=false
stream=false
size_limit=0
detect_3d=true
svg/scale=1.0

1
test_blur.ptex Normal file
View File

@ -0,0 +1 @@
{"connections":[{"from":"bricks","from_port":0,"to":"graph","to_port":0},{"from":"bricks","from_port":0,"to":"graph","to_port":0},{"from":"graph","from_port":0,"to":"Material","to_port":0}],"label":"Graph","name":"49","node_position":{"x":0,"y":0},"nodes":[{"name":"Material","node_position":{"x":-44,"y":-208},"parameters":{"albedo_color":{"a":1,"b":1,"g":1,"r":1,"type":"Color"},"ao_light_affect":1,"depth_scale":1,"emission_energy":1,"metallic":1,"normal_scale":1,"roughness":1,"size":2},"type":"material"},{"name":"bricks","node_position":{"x":-749.25,"y":-215.75},"parameters":{"bevel":0,"columns":3,"mortar":0.173828,"pattern":0,"repeat":1,"row_offset":0.5,"rows":6},"type":"bricks"},{"connections":[{"from":"buffer","from_port":0,"to":"blurx_convolution","to_port":0},{"from":"buffer_2","from_port":0,"to":"blurx_convolution_2","to_port":0},{"from":"switch","from_port":0,"to":"buffer_2","to_port":0},{"from":"gen_inputs","from_port":0,"to":"buffer","to_port":0},{"from":"gen_inputs","from_port":0,"to":"switch","to_port":1},{"from":"blurx_convolution","from_port":0,"to":"switch","to_port":0},{"from":"switch_2","from_port":0,"to":"gen_outputs","to_port":0},{"from":"blurx_convolution_2","from_port":0,"to":"switch_2","to_port":0},{"from":"switch","from_port":0,"to":"switch_2","to_port":1}],"label":"Gaussian Blur","name":"graph","node_position":{"x":-411.61734,"y":-216.392853},"nodes":[{"convolution_params":{"input_type":"rgba","matrix_function":"exp(-0.5*(pow(x/sigma, 2.0)))/(6.28318530718 *sigma*sigma)","normalized":true,"output_type":"rgba","parameters":[{"max":50,"min":0.05,"name":"sigma","type":"float"}],"x":50,"y":0},"name":"blurx_convolution","node_position":{"x":-407.5,"y":-217.5},"parameters":{"sigma":10.175,"size":5},"type":"convolution"},{"name":"buffer_2","node_position":{"x":-408.875,"y":-90.625},"parameters":{"size":5},"type":"buffer"},{"convolution_params":{"input_type":"rgba","matrix_function":"exp(-0.5*(pow(y/sigma, 2.0)))/(6.28318530718 *sigma*sigma)","normalized":true,"output_type":"rgba","parameters":[{"max":50,"min":0.05,"name":"sigma","type":"float"}],"x":0,"y":50},"name":"blurx_convolution_2","node_position":{"x":-407.125,"y":-44.375},"parameters":{"sigma":10.175,"size":5},"type":"convolution"},{"name":"switch","node_position":{"x":-437.452393,"y":-147.166656},"parameters":{"choices":2,"outputs":1,"source":0},"type":"switch"},{"name":"switch_2","node_position":{"x":-323.452393,"y":-173.666656},"parameters":{"choices":2,"outputs":1,"source":0},"type":"switch"},{"name":"buffer","node_position":{"x":-408.25,"y":-265.75},"parameters":{"size":5},"type":"buffer"},{"name":"gen_parameters","node_position":{"x":-438.666626,"y":-391.666656},"parameters":{"param0":5,"param1":10.175,"param2":0},"type":"remote","widgets":[{"label":"Grid size:","linked_widgets":[{"node":"buffer","widget":"size"},{"node":"blurx_convolution","widget":"size"},{"node":"buffer_2","widget":"size"},{"node":"blurx_convolution_2","widget":"size"}],"type":"linked_control"},{"label":"Sigma:","linked_widgets":[{"node":"blurx_convolution","widget":"sigma"},{"node":"blurx_convolution_2","widget":"sigma"}],"type":"linked_control"},{"configurations":{"Both":[{"node":"switch","value":0,"widget":"source"},{"node":"switch_2","value":0,"widget":"source"}],"X":[{"node":"switch","value":0,"widget":"source"},{"node":"switch_2","value":1,"widget":"source"}],"Y":[{"node":"switch","value":1,"widget":"source"},{"node":"switch_2","value":0,"widget":"source"}]},"label":"Direction:","linked_widgets":[{"node":"switch","widget":"source"},{"node":"switch_2","widget":"source"}],"type":"config_control"}]},{"name":"gen_inputs","node_position":{"x":-738.666626,"y":-190.392853},"parameters":{},"ports":[{"name":"port0","type":"rgba"}],"type":"ios"},{"name":"gen_outputs","node_position":{"x":-23.452393,"y":-190.392853},"parameters":{},"ports":[{"name":"port0","type":"rgba"}],"type":"ios"}],"parameters":{"param0":5,"param2":0},"type":"graph"}],"parameters":{},"type":"graph"}