Figured we should be talking about Material Maker, since they reached 1.0 recently. It's a free open source tool made in Godot for creating procedural materials and textures. You can find it on Itch for free (or donate if you want to support the project).

https://www.materialmaker.org/

Here is some of the stuff I've been able to make in a couple days with Material Maker and Godot 4.0.

    cybereality

    Good idea :-) The first one still doesn't look very plausible to me (as far as that's a criterion) because of the light bleeding, the specular reflection and the shadow, that don't quite fit the environment, which seems to me a band of indirect light alongside de left wall.

    The second one (Matrix-style subway charm :-)) is more like it, imo.

    Yeah, for sure. The wood one was made quickly in about 4 hours, and was the first thing I finished in Material Maker. The new one I spent 3 days on. Also, I only did the material in the foreground. The background is not 3D, it's an HDRI skybox. So the lighting doesn't exactly match, I just rotated it to get a good angle.

    I played with Material Maker a while ago. Just messing around and got good simple result, enough for my need so I plan to use it in the future. But your results blew me away.

      Gowydot But your results blew me away.

      Thanks so much. I'm actually impressed it worked so well. It ended up looking nicer than the tutorial.

      I've decided to release the tile material to the community with CC-BY license. It's available on the Material Maker website or through the app. Just search for "Dirty Cracked Tiles". Also exported a 4K screenshot from Godot 4.0 to better show the quality.

      Made a brick wall. This was done on my own, so not quite as good as the first, but it looks pretty close to the reference photo I was using.

      Been working with the Material Maker devs to get this crash fixed, been locking up my system all day (not just an app crash, a GPU crash, black screen, artifacts, etc.). Thankfully they fixed it, available on the nightly builds and will be in Material Maker 1.1. This is the update I did on the brick to get it more rounded and add some depth.

      Awesome. Did they say what caused it ?

      Yeah, I guess Godot can crash if you provide non-noramlized values to the height property on the material (less than zero or greater than 1). Seems strange that a user input could crash a video card (device context lost) but they fixed it by sanitizing the data.

      12 days later

      Here is the finished brick wall.

      And here is the Shadow Warrior remake study.

      Oh, there is a thread for sharing MaterialMaker stuff! Here is a WIP i'm working on right now:

      I'm trying to recreate this: Artstation bricks with leaves

      For the bricks I made two reusable nodes, one that generates UVs / Instance colors for circular instancing and one that creates the scale-like tiling. If someone wants them I can drop them here.

        Oh nice! It looks like there is a little too much depth, and it could use more dirt / detail, but it's getting there.

          cybereality It looks like there is a little too much depth, and it could use more dirt / detail, but it's getting there.

          There's nothing wrong with depth here just very realistic, but with dirt can be given a few alternatives.

          Great job!

          Jummit If someone wants them I can drop them here.

          Probably would have come in handy.

            Also, node graphs get pretty messy after a while, so I hacked together a "tunnel" node that can be used to store a result which can be used elsewhere without a connection:

            Tomcat Probably would have come in handy.

            Here you go:

            {
            	"name": "circular_bricks",
            	"node_position": {
            		"x": 0,
            		"y": 0
            	},
            	"parameters": {
            		"columns": 7,
            		"rows": 17
            	},
            	"seed": 0,
            	"seed_locked": false,
            	"shader_model": {
            		"code": "float d = distance($uv, vec2(.5));\nfloat cols = $columns * 2.0;\nfloat stepped = steps(d, cols);\nfloat y = split(d, cols);\nfloat offset = ($rows - 5.0) * (6.283 * stepped);\nfloat gradient = circular_gradient($uv - vec2(.5));\nfloat x = split(gradient, offset);\nvec3 $(name_uv) = vec3(vec2(x, y), 0);\nfloat $(name_uv)_mask = step(d, 0.5);\nvec3 $(name_uv)_id = col(vec2(stepped, steps(gradient, offset)));\n",
            		"global": "float circular_gradient(vec2 uv) {\n\treturn fract(0.15915494309 * atan(uv.x, uv.y));\n}\n\nfloat bricks(vec2 uv) {\n\tif (any(greaterThan(uv, vec2(.9))) || any(lessThan(uv, vec2(.1)))) {\n\t\treturn 0.0;\n\t}\n\treturn 1.0;\n}\n\nfloat steps(float a, float num) {\n\treturn ceil(a * (num)) / (num);\n}\n\nfloat split(float a, float num) {\n\treturn mod(a * num, 1.0);\n}\n\nvec3 col(vec2 a) {\n\treturn rand3(a);\n}\n\n",
            		"inputs": [
            
            		],
            		"instance": "",
            		"longdesc": "Create a circular array of squares that stay the same size.\n\nMade by Jummit.",
            		"name": "Circular Bricks",
            		"outputs": [
            			{
            				"rgb": "$(name_uv)",
            				"shortdesc": "UVs",
            				"type": "rgb"
            			},
            			{
            				"f": "$(name_uv)_mask",
            				"shortdesc": "Mask",
            				"type": "f"
            			},
            			{
            				"rgb": "$(name_uv)_id",
            				"shortdesc": "ID",
            				"type": "rgb"
            			}
            		],
            		"parameters": [
            			{
            				"control": "None",
            				"default": 8,
            				"label": "Rows",
            				"max": 30,
            				"min": 0,
            				"name": "rows",
            				"step": 1,
            				"type": "float"
            			},
            			{
            				"control": "None",
            				"default": 18,
            				"label": "Columns",
            				"max": 40,
            				"min": 0,
            				"name": "columns",
            				"step": 1,
            				"type": "float"
            			}
            		],
            		"shortdesc": "Circular Bricks"
            	},
            	"type": "shader"
            }
            {
            	"connections": [
            		{
            			"from": "graph",
            			"from_port": 0,
            			"to": "blend_5",
            			"to_port": 1
            		},
            		{
            			"from": "tiler_4",
            			"from_port": 2,
            			"to": "custom_uv_2",
            			"to_port": 1
            		},
            		{
            			"from": "translate_3",
            			"from_port": 0,
            			"to": "tiler_4",
            			"to_port": 0
            		},
            		{
            			"from": "translate_4",
            			"from_port": 0,
            			"to": "custom_uv_2",
            			"to_port": 0
            		},
            		{
            			"from": "graph",
            			"from_port": 0,
            			"to": "translate_3",
            			"to_port": 0
            		},
            		{
            			"from": "blend_5",
            			"from_port": 0,
            			"to": "translate_4",
            			"to_port": 0
            		},
            		{
            			"from": "gen_inputs",
            			"from_port": 0,
            			"to": "blend_5",
            			"to_port": 0
            		},
            		{
            			"from": "custom_uv_2",
            			"from_port": 0,
            			"to": "gen_outputs",
            			"to_port": 0
            		}
            	],
            	"label": "Tile Scales",
            	"longdesc": "This can be used for roofs, stone patterns or other interesting shapes.\n\nMade by Jummit.",
            	"name": "scales",
            	"node_position": {
            		"x": 0,
            		"y": 0
            	},
            	"nodes": [
            		{
            			"name": "tiler_4",
            			"node_position": {
            				"x": 641.931946,
            				"y": 290.662415
            			},
            			"parameters": {
            				"fixed_offset": 0.5,
            				"inputs": 0,
            				"offset": 0,
            				"overlap": 2,
            				"rotate": 0,
            				"scale": 0,
            				"scale_x": 1,
            				"scale_y": 1,
            				"tx": 1,
            				"ty": 6,
            				"value": 0,
            				"variations": false
            			},
            			"seed": 0,
            			"seed_locked": false,
            			"type": "tiler"
            		},
            		{
            			"name": "blend_5",
            			"node_position": {
            				"x": 385,
            				"y": 92
            			},
            			"parameters": {
            				"amount": 1,
            				"blend_type": 10
            			},
            			"seed": 0,
            			"seed_locked": false,
            			"type": "blend"
            		},
            		{
            			"name": "translate_4",
            			"node_position": {
            				"x": 648.5,
            				"y": 94
            			},
            			"parameters": {
            				"translate_x": 0,
            				"translate_y": 0.5
            			},
            			"seed": 0,
            			"seed_locked": false,
            			"type": "translate"
            		},
            		{
            			"connections": [
            				{
            					"from": "translate",
            					"from_port": 0,
            					"to": "mirror",
            					"to_port": 0
            				},
            				{
            					"from": "shape_3",
            					"from_port": 0,
            					"to": "translate_2",
            					"to_port": 0
            				},
            				{
            					"from": "blend_3",
            					"from_port": 0,
            					"to": "blend_2",
            					"to_port": 1
            				},
            				{
            					"from": "mirror",
            					"from_port": 0,
            					"to": "invert_2",
            					"to_port": 0
            				},
            				{
            					"from": "invert_2",
            					"from_port": 0,
            					"to": "blend_2",
            					"to_port": 0
            				},
            				{
            					"from": "translate_2",
            					"from_port": 0,
            					"to": "invert_3",
            					"to_port": 0
            				},
            				{
            					"from": "invert_3",
            					"from_port": 0,
            					"to": "blend_3",
            					"to_port": 1
            				},
            				{
            					"from": "shape_3",
            					"from_port": 0,
            					"to": "blend_3",
            					"to_port": 0
            				},
            				{
            					"from": "shape_3",
            					"from_port": 0,
            					"to": "translate",
            					"to_port": 0
            				},
            				{
            					"from": "blend_2",
            					"from_port": 0,
            					"to": "gen_outputs",
            					"to_port": 0
            				}
            			],
            			"label": "Scale",
            			"longdesc": "",
            			"name": "graph",
            			"node_position": {
            				"x": 107.019791,
            				"y": 282.835144
            			},
            			"nodes": [
            				{
            					"name": "shape_3",
            					"node_position": {
            						"x": -794,
            						"y": 317
            					},
            					"parameters": {
            						"edge": 0,
            						"radius": 1,
            						"shape": 0,
            						"sides": 4
            					},
            					"seed": 0,
            					"seed_locked": false,
            					"type": "shape"
            				},
            				{
            					"name": "translate",
            					"node_position": {
            						"x": -593,
            						"y": 248
            					},
            					"parameters": {
            						"translate_x": -0.5,
            						"translate_y": 0.175
            					},
            					"seed": 0,
            					"seed_locked": false,
            					"type": "translate"
            				},
            				{
            					"name": "mirror",
            					"node_position": {
            						"x": -339,
            						"y": 240
            					},
            					"parameters": {
            						"direction": 0,
            						"flip_sides": true,
            						"offset": 0
            					},
            					"seed": 0,
            					"seed_locked": false,
            					"type": "mirror"
            				},
            				{
            					"name": "invert_2",
            					"node_position": {
            						"x": -135,
            						"y": 240
            					},
            					"parameters": {
            
            					},
            					"seed": 0,
            					"seed_locked": false,
            					"type": "invert"
            				},
            				{
            					"name": "translate_2",
            					"node_position": {
            						"x": -616.5,
            						"y": 393
            					},
            					"parameters": {
            						"translate_x": 0,
            						"translate_y": 0.45
            					},
            					"seed": 0,
            					"seed_locked": false,
            					"type": "translate"
            				},
            				{
            					"name": "invert_3",
            					"node_position": {
            						"x": -348,
            						"y": 397
            					},
            					"parameters": {
            
            					},
            					"seed": 0,
            					"seed_locked": false,
            					"type": "invert"
            				},
            				{
            					"name": "blend_3",
            					"node_position": {
            						"x": -153,
            						"y": 325
            					},
            					"parameters": {
            						"amount": 1,
            						"blend_type": 10
            					},
            					"seed": 0,
            					"seed_locked": false,
            					"type": "blend"
            				},
            				{
            					"name": "blend_2",
            					"node_position": {
            						"x": 85,
            						"y": 240
            					},
            					"parameters": {
            						"amount": 1,
            						"blend_type": 10
            					},
            					"seed": 0,
            					"seed_locked": false,
            					"type": "blend"
            				},
            				{
            					"name": "gen_inputs",
            					"node_position": {
            						"x": -1060,
            						"y": 309.926392
            					},
            					"parameters": {
            
            					},
            					"ports": [
            
            					],
            					"seed": 0,
            					"seed_locked": false,
            					"type": "ios"
            				},
            				{
            					"name": "gen_outputs",
            					"node_position": {
            						"x": 336.926422,
            						"y": 238.718369
            					},
            					"parameters": {
            
            					},
            					"ports": [
            						{
            							"name": "port0",
            							"type": "rgba"
            						}
            					],
            					"seed": 0,
            					"seed_locked": false,
            					"type": "ios"
            				},
            				{
            					"name": "gen_parameters",
            					"node_position": {
            						"x": -285.6875,
            						"y": 95
            					},
            					"parameters": {
            
            					},
            					"seed": 0,
            					"seed_locked": false,
            					"type": "remote",
            					"widgets": [
            
            					]
            				}
            			],
            			"parameters": {
            
            			},
            			"seed": 0,
            			"seed_locked": false,
            			"shortdesc": "",
            			"type": "graph"
            		},
            		{
            			"name": "translate_3",
            			"node_position": {
            				"x": 367.431946,
            				"y": 299.662384
            			},
            			"parameters": {
            				"translate_x": 0,
            				"translate_y": 0.5
            			},
            			"seed": 0,
            			"seed_locked": false,
            			"type": "translate"
            		},
            		{
            			"name": "custom_uv_2",
            			"node_position": {
            				"x": 950.211121,
            				"y": 94.632004
            			},
            			"parameters": {
            				"inputs": 0,
            				"rotate": 0,
            				"scale": 0,
            				"sx": 1,
            				"sy": 1,
            				"variations": false
            			},
            			"seed": 0,
            			"seed_locked": false,
            			"type": "custom_uv"
            		},
            		{
            			"name": "gen_inputs",
            			"node_position": {
            				"x": -60,
            				"y": 90.865761
            			},
            			"parameters": {
            
            			},
            			"ports": [
            				{
            					"name": "Color",
            					"type": "rgb"
            				}
            			],
            			"seed": 0,
            			"seed_locked": false,
            			"type": "ios"
            		},
            		{
            			"name": "gen_outputs",
            			"node_position": {
            				"x": 1274.211182,
            				"y": 95.865753
            			},
            			"parameters": {
            
            			},
            			"ports": [
            				{
            					"name": "Color",
            					"type": "rgb"
            				}
            			],
            			"seed": 0,
            			"seed_locked": false,
            			"type": "ios"
            		},
            		{
            			"name": "gen_parameters",
            			"node_position": {
            				"x": 68.677216,
            				"y": -377
            			},
            			"parameters": {
            
            			},
            			"seed": 0,
            			"seed_locked": false,
            			"type": "remote",
            			"widgets": [
            
            			]
            		}
            	],
            	"parameters": {
            
            	},
            	"seed": 0,
            	"seed_locked": false,
            	"shortdesc": "Tile in the shape of scales",
            	"type": "graph"
            }
            4 months later
            2 months later

            My latest render in Godot 4.0. Made with Blender and Material Maker.