Material Maker
A downloadable tool for Windows, macOS, and Linux
Material Maker is a procedural materials authoring and 3D model painting tool, based on the Godot Engine. Materials and brushes are defined as graphs where nodes create or transform textures, and can be exported for the Godot, Unity and Unreal game engines.
Most nodes are defined as GLSL shaders, and when connecting them, Material Maker will generate combined shaders (instead of rendering an image for each node). It is also possible to create new nodes either by combining and grouping existing nodes, or by writing your own GLSL shaders.
Material Maker is available for Windows, Linux and MacOS.
The source code is available on GitHub, as well as the online documentation. Github is also where you can report bugs or suggest new features.
Material Maker also has its own subreddit, and its Discord server and this is where you can ask (and answer) questions.
You can also share the awesome materials you created on the Material Maker website.
Materials you can create
Material Maker can be used to create several types of materials, and new custom material types, as well as new export targets for existing materials, can be added if needed.
- Static PBR material: this is the most common material type, and exporting it will generate a few textures (albedo, metalness, roughness etc.) you can import in your favorite game engine
- Dynamic PBR material: a PBR material with motion, that will be exported as a shader (and optional textures).
- Raymarching material: a raymarching scene inside the mesh it is applied to, exported as a shader.
- Dynamic unlit materials are also exported as shaders and can be used to create all sorts of VFX.
Features as of version 1.0
- A simple texture generation engine that defines a very small set of node types (shaders, buffers, node groups, image, text, switch...) that can be connected to describe procedural textures. The engine does not generate an image for each node, but combines shaders until it reaches a buffer node or the target Material node (textures described as combined shaders are resolution independent).
- A painting engine that can paint albedo, roughness, metallic, emission, normal map, depth and ambient occlusion components of a 3D object's material at the same time, use generated shaders as brushes and can map patterns on brush, screen or texture space. The painting tool supports multiple Paint, Procedural and Mask layers.
- A website dedicated to sharing procedural materials and brushes.
- A base library of ~200 nodes that define shapes, patterns, filters and transforms on textures, as well as 2D and 3D shapes described as signed distance functions. Those nodes can be accessed from the Library panel or the nodes context menu of the graph view.
- New group nodes and shader nodes can easily be created using the user interface (creating shader nodes require some GLSL knowledge).
- A graph view where material graphs are edited, with several available material types (Static PBR, Dynamic PBR, 3D PBR, Raymarching, Unlit).
- For all material types, exports ready-to-use materials for the Godot and Unity game engines. For Unreal 4, manual setup of the material is necessary, Material Maker only generates image files and shaders. For Unreal Engine 5, Material Maker generates a python script that must be executed in Unreal to automatically build the material.
- A hierarchy view that shows the hierarchy of group nodes in the current material.
- 2D preview panels that shows the textures generated by the selected nodes and can export the result, as a single image, or as several images or a spritesheet for animations.
- A 3D preview panel that shows the current PBR material on a model. Basic shapes (Cube, Sphere...) are available and custom models can be loaded in .OBJ format.
- An Histogram panel that shows the current node's output tonal distribution.
- A Reference panel where images files can be dropped and that can be used to pick colors and gradients.
Pay what you want
Material Maker is free and open source, but it is still possible to help the project in many ways.
- If you don't feel like paying anything, just click the "No thanks, just take me to the downloads" link when prompted for a donation. You can still help the project by submitting awesome materials on the website, reporting bugs, suggesting new features, or even contribute code on Github.
- You can, of course, donate when downloading. Thanks a lot for doing so.
- If Material Maker is really useful to you and you wish to contribute more, I have a Patreon. Backers have Discord benefits, and this will help me spend more time on this project.
- If you want more tutorials, Arnklit (the guy who creates awesome video tutorials for Material Maker) has a Patreon as well.
Translations
Translation files can be installed using the Download button in the Preferences dialog.
If for any reason this does not work, you can download the translation file manually and use the Install button instead.
- Chinese translation (Created by free_king)
TroubleShooting
- If you have problems running Material Maker on MacOS (or any other platform), please contact me on Discord
- If you want to run a 32 bits version of Material Maker 1.0 under Windows or Linux, you will just have to:
- download and install the 64 bits version
- download the 32 bits version of Godot 3.4.4 for your OS from here
- in Material Maker install dir, replace the executable file with the 32 bits Godot executable
- you now have a 32 bits Material Maker
- For any other problem, please don't hesitate to contact me on Discord
Updated | 1 day ago |
Status | In development |
Category | Tool |
Platforms | Windows, macOS, Linux |
Rating | Rated 4.9 out of 5 stars (207 total ratings) |
Author | RodZilla |
Made with | Godot |
Tags | designer, godot-engine, material, pbr, Procedural Generation, substance, Textures |
Code license | MIT License |
Asset license | Creative Commons Zero v1.0 Universal |
Average session | A few minutes |
Languages | English |
Inputs | Keyboard, Mouse |
Links | Source code, Documentation, Discord server |
Download
Click download now to get access to the following files:
Development log
- A first alpha for 1.41 day ago
- On the road to 1.4Dec 07, 2023
- Material Maker 1.3Apr 24, 2023
- Material Maker 1.2p1Feb 27, 2023
- Material Maker 1.2Jan 22, 2023
- Material Maker 1.1Oct 25, 2022
- The calm after the stormSep 11, 2022
- Material Maker 1.0Jul 22, 2022
Comments
Log in with itch.io to leave a comment.
I love this it makes my life easier a bit but i'm sure you heard this question a lot but what about version 1.4? is it near being finished or still need more time?
Probably a few months. But lots of new stuff. I hope I can release a first alpha soon (and things should be faster thereafter).
Thanks for this amazing tool! I've had a lot of fun learning the tool for the past couple of days and produced some awesome textures that I didn't expect could be made so fast!
One question: is there an easy way to select one of the shapes that we get from the Brick Fill output?
There's no node for this yet, but it could be created easily. Please don't hesitate to ask the question on Discord. ;)
Can you generate a volume texture, the flipbook, giving a image texture as input? Like load a 128x128 image, and it returns a 2048x2048 image with his flipbook to be used as volume texture. If possible, any tutorial/guide?
Hi! For that kind of questions, please don't hesitate to join us on Discord. I think Arnklit did volume textures related stuff a few weeks ago. ;)
Hi Is there a guide on how to migrate to material maker from substance designer? I make stylized materials. I want to imitate the brush strokes from painterly Ghibli anime-style drawings. Can you give me a guide?
Hi! You probably want to join the discord server and ask your question there. :)
Will Material Maker eventually have Substance Painter exports? It would be great to have an alternative that allows me to make custom alpha or materials that I can dynamically tweak in the software without buying Designer.
I check back here pretty regularly hoping to see more details on the 1.4 roadmap. Fill us in on how things are going when you get a chance! :)
The best way to get informed is to join us on Discord. ;)
But yeah, there should be alpha and beta releases soon (changes are quite big, including migrating to Godot 4, so I'd rather take my time and hunt bugs for as long as necessary).
do you release material maker on steam?
Maybe one day...
i would pay for having in my steam library
Been using this off and on for a few years now and damn if this software ain't good.
Any way to remove favorites in the file browser? Loading a new image and I have moved one of my favorite folders, just a dead link there now.
Thanks!
Yeah, just select a "favorite" folder and press the Delete key.
Awesome, thanks!
Love the app btw, perfect middle man for Blender and Godot with complex materials. Great job!
Keep Crashing. It closes right after opening the app. It does not even fully loads.
If you have an AMD GPU, updating the drivers should solve the problem.
Anyway to do this for nixos
The Linux build should work for most Linux distributions.
If still actual, just use
steam-run <path to material maker exec>
(for RodZilla, nixos use it's own approach for dependencies and package management, so it not just works, but it isn't your problem)
Its shared on Threads
https://www.threads.net/@c.m.z.w/post/C4NvI7Qu5XS
i just got it for something i want to move to Godot (which i mostly booted for the first time now) and this thing is pretty amazing, its like the $5 version of substance painter with options and limited to the person using it, quite intuitive , even for a lamer noob like us here. It has trouble closing (cinnamon mint 20.2) when its been open for a while (but the pc is what atm would be low-end i suppose, intel Xeon i7 and a gtx 970 w 16gb ddr4 (its a nice benchmark if things run on that they got options for more) and its not the only application that seems to have some trouble with cinnamon. I cant say if its a memory thing or anything else b/c im keeping it open at the same time as godot. Im not complaining (but i bought it anyway heh) tis just fyi . Anyone who cant tax deduct stuff like notch and adobe probably needs this. thx !! looking forward to more (especially 10000 cc0 mats on the website by 2025 hahah )
Please don't hesitate to join the Discord and describe what happens so I can investigate this...
I hope it will be available on STEAM, and I would like to purchase it.
Material Maker is definitely not ready for a Steam release (especially on the painting side), but maybe one day...
Hello there, I recently downloaded Material Maker and I must say how much I appreciate the hard work that you put into this software. It's really intuitive and covers many grounds with the nodes provided. Quick question I know you can paint textures onto your model however I wanted to know if it's possible to paint imported textures onto a model? Let's say hypothetically painting using an imported png texture.
Yes, there are a few brush presets (in the Brush panel) that show what's possible, and I guess the Stamp brush is a good starting point for you. Please don't hesitate to join us on discord if you have questions.
Thank you for the reply. That's wonderful! It was a minor question I had and will be sure to recommend this to many others. I appreciate the effort and am looking forward to being a part of the discord. Have a good day Rodzilla!
Edit: Apologies, one last thing what format 3d models can this import?
Only .obj format is supported for now. This will change in next release.
Hey, i think i´ve used Material Maker for 50+ hours and I LOVE IT.
It´s great to use some other Programm that is not Adobe or Autodesk infested
but i´ve had some bugs that i want to report.
1. Sometimes when i load a Material from the Website it crashes or the Material is not correctly loaded in the 3D Preview.
2. Sometimes it wont let me connect the nodes to each other, even thow it should be possible.
3. It tried to import a Material to UE5 with the Python Script and i got this error massage:
LogPython: Error: Traceback (most recent call last):
LogPython: Error: File "O:/Portfolio/Spaceship/Materials/UE_Export_Test/Rain_Export_Test.py", line 2, in <module>
LogPython: Error: import mm
LogPython: Error: ModuleNotFoundError: No module named 'mm'
(I´m using UE 5.3.1)
Anyways, keep up the great work you do!
Hi! Please don't hesitate to contact me on Discord so I can investigate those problems and/or help you workaround them!
this is awesome
I love the look of this, thanks for your creation! Is there any timeframe for the godot 4 version?
It should have been released in July, but there's still a lot of work. I'll post a devlov about this soon.
You can still join us on Discord and help test the alphas. ;)
It's cool, but ...
This no Windows GUI, it's very inconvenient to use
Sometimes it crashes
Why must i download the enviroments from "materialmaker.org"?
The opportunities for export are very small
It works under Windows, Linux and macOS.
Please don't hesitate to report problems.
You can create your own environments (using HDRIs that are available on Poly Haven, for example), and your own export targets.
Man, it really crashes. By maybe 80%+ loading.
If you're using an AMD graphics card, try downgrading your graphics driver to the version before 22.7.1.
Uh, I am using NVidia, not AMD.
Using F@ckVdia 730, the worst GPU ever...
But I still think I can run some small projects like this. I can play games like Offworld (From Epic Givaways) okay. Which of course recommends me to update the driver.
Is the material maker using Godot 4? That can be another reason if yes.
Next release will use Godot 4.1.
it crashed immidentaly when i clicked on a button i didnt know
Which button?
i dont remember,i like have a terrible memory
this is my favorite interaction of all time on itch
was it the 'x' on the top corner?
uhhh why are you so COOL for making this? who made you so cool??
Any fix for the startupcrash with newer Amd drivers ?
It cannot be fixed (AFAIK) before switching to Godot 4 (which is what I'm currently doing). It seems the web version works (but it has many limitations).
You may want to join us on Discord so you can use early 1.4 builds when they are available.
Have the same problem
If you can/want to install an older version of your drivers, it should work. Otherwise, 1.4 alpha/beta builds should be available soon for you to test. I'd suggest you join the Discord server to know when they're ready.
I didn't found a node permitting me to have a value of 0 until a given offset and a value above. So, I created a custom node "offset" (Should be "step", but that name is already used) with this output:
float($uv.x>$offset)
There's a comparison operator in the Math node.
For anyone wondering, in the math node, you can pick A<B and set A to $uv.x and B to your treshold.
If you want a vertical line that is centered, use abs($uv.x-0.5).
For an horizontal line, replace "x" by "y".
And thanks for your guidance!
Material Maker 1.2 crashes on startup, during the splash screen
Specs: Windows 11, i5-11400, Radeon RX6600, 8gb ram
any workarounds?
Is it the first time you run it? Did you use previous releases successfully?
Yes, I have used 1.1 on a previous pc, and 1.2 before on my current pc. It was probably the new radeon driver update that broke it.
Before the driver update it worked fine, after the update it broke.
This. This is the good stuff.
Tessellation does not seems to be working by enabling tessellated in mesh configuration, Is there something else I needed to have done?
Do you use displacement materials?
Yes, I just found how to switch materials from a Pavel Oliva tutorial, but still thank you.
And also now, toggling tessellated works on all meshes except for the cube. Tessellating the cube freezes the editor and I have to force close the application after an hour.
Coming from Substance Designer, this is excellent!
Is it possible to export just the .png from the export node. Sometimes I need just the image and not the material as a whole.
I guess it's possible to create an empty export target. You can also export any texture from the preview panel.
This is super cool, thanks!
I may be missing something, but it's not clear to me how to correctly import exported files from MM into Blender, and I don't see it mentioned in the documentation. Is that described somewhere? My end goal is to export for Godot but I want to use Blender to preview and adjust my models with the materials applied first.
You must create the material in Blender using the generated texture. The "Node Wrangler" plugin can be used to do this in a few clicks.
Is there any hope for glTF support in a future update?
Or potentially .blend support so that we can import the model and materials from Blender? That'd be amazing, though I'm sure very complicated.
Of course there is, as soon as MM is based on Godot 4. And it's not very complicated I guess, just waiting for Godot. ;)
Was that whole thing just a lead up to En attendant Godot joke?
Nice. Very nice :D
Also happy to hear, since glTF is going to be super important for my workflow, and I really like using material maker!
Please don't hesitate to contact me on discord so I understand what you need exactly. Maybe I can do something before migrating to Godot 4 (I absolutely don't know when it will happen), and this could help me anticipate future glTF related features.
This looks amazing. I'll definitely be checking this out when I get back to making 3D games!
I've messed around with Substance Designer in the past. I must say, MM is excellent! Minus a few nodes, you can follow SD tutorials pretty well with this. Wonderful job! Looking forward to the next update!
Hii, I am keen x, the developer of Don't dare to decay and scarlet space. I just want to ask if you have scarlet space.zip if yes please send it to me through discord Please it's urgent
Indie Prashant#4208
Love the tool. Are there any plans to add graphics tablet support? It's very difficult for me to paint on the model with a mouse. It would be much easier with a pen.
Hi! Painting with a graphic tablet (with pressure and tilt support) is already supported. Could you please contact me on discord so I can investigate the problem?
I think I see the problem. I'm on Ubuntu 22.04 and the tablet/pen is not detected in the Settings menu (which I think uses libwacom). However it does work in apps like GIMP and Blender, I think cause they have native support. I tried to update libwacom myself, but the libraries don't work on newer versions of Ubuntu, so I might be stuck. I'm using a Huion Q11K.
Hi, I have used MaterialMaker several times but since a few days ago for some reason when I start the program, it loads for a few seconds and crashes and that's why I have not been able to use the program. Do you know by any chance why this happens?
This could be caused by corrupted config files. In that case, removing (or renaming) the material_maker directory in C:/Users/yourusername/AppData/Roaming should solve your problem.
ty! it did work. Good job btw
Thank you so much for mac support!
Just to provide an update for anyone maybe wanting to use the win32 hack - it doesn't work.
I guess you have to download Godot 3.4.4, now (didn't actually test it, though).
(edit) Tested it and updated instructions.
I tried that - it didn't work. 32 bit systems are old and probably aren't capable for this software.
this is fantastic but please, please make the active are on the node-outputs and inputs larger. It's c4D-level of aggravating how pixel-perfect you have to click on the circles.