It doesnt work for mac, i waste my money
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.
You can also share the awesome materials you created on the Material Maker website.
Features as of version 0.97
- 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 independant).
- 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 ~150 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, manual setup of the material is necessary, Material Maker only generates image files and shaders.
- 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.
Translation files can be installed using the Install button in the Preferences dialog.
- Chinese translation (Created by free_king)
|Updated||4 days ago|
|Platforms||Windows, macOS, Linux|
|Tags||designer, godot-engine, material, pbr, Procedural Generation, substance, textures|
|Asset license||Creative Commons Zero v1.0 Universal|
|Average session||A few minutes|
|Links||Source code, Documentation, Discord server|
Click download now to get access to the following files:
- Material Maker 0.9710 days ago
- Randomness in Material Maker12 days ago
- Material Maker for MacOS84 days ago
- Material Maker 0.9688 days ago
- The future of Material Maker95 days ago
- Material Maker 0.95Apr 22, 2021
- Material Maker 0.94Jan 31, 2021
- 3D model painting alpha releaseNov 15, 2020
Log in with itch.io to leave a comment.
Hi, could you please describe what happens when you try to start Material Maker so I can try to provide a fix? Please don't hesitate to join the discord server so we can chat and find a solution.
Thanks a lot in advance.
I open the dmg file, I copied the material_maker app to my hard drive, I open the file and it says “material_maker” is damaged and can’t be opened. You should move it to the trash.
I have never had a message like this.
What should I do
Detailed photoreal materials can be made with MM.
when I think prepare a tranlation.csv then i can do some setups ,but the fact is i only can input local word and interface still English.....QAQ
material maker should be available for mac also
I cannot test a MacOS port. If Mac users help, this can happen.
how can we help?
Please join our discord server, and say hi in the #macos_port channel. I'll be able to spend time on this later today...
I really wanna use material maker in a mac.Please help
i say MM is powfull software ...yes!
em......why I open this site every day?
Dunno. A very bad addiction maybe... 😏 Please be patient, 0.96 needs a bit more work. And time.
ok maybe you can improve the operation .i think node socket is not easy to click and link......becase that point is too small...
That's because you unzoom the graph. If your graph is too big, you should start creating node groups.
I cannot really change that behaviour, it's provided by Godot (and the connect zone is already bigger than the default one).
BTW, we really have to find another place to communicate, this one is really not convenient. If you can suggest one...
The tool works well - but the addon side (from the steam godot) produces:
Unable to load addon script from path: 'res://addons/material_maker/plugin.gd'. This might be due to a code error in that script.
Disabling the addon at 'res://addons/material_maker/plugin.cfg' to prevent further errors.
Just FYI. If you import manually instead it works fine. This tool is a big help when coming from something more like UE!
The addon part is obsolete, for now. It is possible to make it work, but has little value for now (export from standalone tool is smooth). I will probably make it work again in a few months.
How do I use brushes? Every time I click the check box nothing happens
Hmm did you try the predefined brushes in the brush panel? Clicking the checkboxes just enable the different channels of the brush, but you still have to create the brush graph.
Please don't hesitate to join us on Discord if you need help. It's much more convenient than this comment section.
Oh and did you Select a layer?
it seem that material maker can make music????
That was a special release for April Fools in 2020. It worked, but I was not satisfied with the result, so those features are not in Material Maker anymore. I might give them another try once compute shaders are available in Godot 4. But maybe not in Material Maker.
when will 0.96 relaess?
Is MacOS version available?
I have an experimental MacOS build, but cannot test it. Please don't hesitate to join our discord server if you are willing to help.
drap many pictures(.png) may be have bug.....or just my wrong
their sizes aren't 2^n
May be we need more language support......i18n ....
Hmm there's a pull request on Github for internationalisation, but I'm not sure how we can get translations in a reliable way for a small open source project.
waiting amzing node all the day <:
Uh? What are you talking about?
emmmm.....Do you have try to copy the debug node 's code into godot?it doesn't work.And when I try to fill to uv ,but it have and egde...So....But i still think our software can beyond quixel mixer.
How can i use the height map affect the model to make a displacement?
In the 3D preview, select the Model -> Configure menu item and check the "tesselate" option. This only works with default models, not custom ones.
how can i add my node into a difined or difined by user layer? like noise -> fbm to my panel -> my node.
Maybe you want to join our Discord server for that kind of questions.
discord was be banned in my country QAQ.........
i even want to get the model's normal and any other mesh data
Hmm reddit maybe?
Well, you can import any map using the Image node. Then just connect it to whatever you want. You may have to modify the normal map format using the SwapChannels node depending on how it was generated.
if godot update to 4.0,Material Maker will be better?=w=
At least it will be possible to split the UI into multiple windows. I'm not sure yet what Vulkan will change. New features will probably be possible with compute shaders.
Porting to Godot 4.0 will also probably be a lot of work so it might take quite some time after Godot 4 is available.
Hey RodZilla, we are interested in extending Material Maker capabilities as an open core effort in a particular direction and would like to know if you are available for contract developoment.
Hi Baragon76! Can you contact me on Discord?
Hey! node operation is so hard,maybe you can copy what Blender had done.It can link and cut easily with its wrangle addon. And the linking line is not easy to focus on the node. The painting model is Primitive，maybe the material we mixed can be refered as a layer. em.......where the mask ?
0.94 is the first release with painting, so yes it is primitive. Masks and procedural layers will be available in 0.95.
I've been playing around with this for the last week or so and It really cool; its nice to have something procedural like this since I kinda stink at hand drawing. I did notice However that there doesnt seem to a license attached to the executable version, I saw one in the Github but you may want to put one with the itchio build just for good measure
Hmm maybe you want to click on the "more information" link in the project description (just above the "Downloads" section). There has been a license since the beginning. ;)
Oh yeah I guess there's one there as well. I more meant in the actual zipped folder that you download. related question Do you have a preferred format for material maker to be credited, I ask because I usually do a credits screen for games I make.
Yes, maybe I should add a "License" section to the doc...
And no, I don't have a preferred format for credits. I'll update the logo in the repository soon (the new logo is already used on Discord/reddit).
This is an amazing software and I'm having a blast making textures so I don't really wanna complain about this petty nuisance but maybe it's a bug:
Is the pixelize node working as intended? It ruins the result by making the borders and center half a pixel instead of whole, making the texture shift a pixel when exported, which I can't use (I need the texture to have the same border width)
I used an image to demonstrate the issue;
Thanks for reporting this!
You'll find a fixed version of the node here: https://pastebin.com/raw/6ak8CD7w
You can either copy the text from that address and paste it into Material Maker's graph view, or just copy/paste the address (Material Maker will download the fixed node unless your firewall prevents it).
It works! Thank you! I'll save it to my user library. By the way, is there a way to upload nodes on materialmaker.org? I translated a setup from Substance to make endless textures with an atlas (and trying to make a shader in godot for them). I think I'll upload it as a material to demonstrate it but would be cool to have a section to browse custom nodes, especially ones that generate noise or patterns
Of course you can upload materials. The (bottom of the) first page of the site explains how.
And please don't hesitate to join us on Discord if you have more questions (link in the tool page here on itch.io).
Pretty cool tool, it's just a shame that when I try to launch it; sometimes it crashes my entire P/C (I have a pretty decent P/C)
Blue Screen Of Death.... Fun
I have no report of BSODs (those are generally caused by drivers or the operating system). It's possible Material Maker triggers a driver problem, and you may want to write down the BSOD information and search for them in Google in case it's a known issue.
I've recommended material Maker on Slant.co:
very rough around the edges, and the ui leaves a lot to be desired, but it's extremely powerful, and a much more solid alternative to substance designer than, for example, texturelab
Please don't hesitate to describe the improvements you'd expect. The more feedback from users, the better Material Maker will become.
sure thing! i'd much prefer a drop down menu with right click on the workspace for adding nodes, then using the space that the node selection previously occupied on the top left for a 3d viewport, imo that'd speed up workflow and make it much more convenient
though at the end of the day, it's better to have the option for the current layout in addition to the improvements me and other people have been asking for, it's always better to have more options rather than less
great work, btw! really like the program so far and where it's been going as well
In 0.92, space bar on the workspace shows a menu to create nodes. You can move all side panes around or hide them using the View->Panes menu.
If you want to test (and give feedback on) the upcoming 0.93 release, you may want to grab a development build there (just click the most recent action): https://github.com/RodZill4/material-maker/actions
This application is without doubt, the BEST free alternative to Substance Designer. Still, there is a lot to do. I have been testing the software I would like to give a constructive feedback because it can be really huge one day.
Improve the camera control, there is no reason to rotate sideways the camera, it gets really confusing.
-Fix the bug on the graph panel that makes impossible to click in the rest of the interface after it happens
-The user interface is (no offense) ugly and the user feeling isn't good
-The zoom inside the graph isn't oriented to the cursor
-The sliding option over the values inside the nodes is a real mess
-It would be nice to incorporate some post processing effects and also a tessellates surface to test the materials.
-LAST thing (for now): FOR GOD'S SAKE PRESENT THIS PROJECT FOR AN EPIC MEGA-GRANT!!!! YOU DESERVE IT!! this is impressive although all the problems, got and take Epic's money. Keep it on, this project is on the right way.
Hi, and thanks for your feedback.
- 3D view control is designed to be able to rotate the camera on all axes (right mouse button for roll axis, left mouse buttons for others) as well as the object (hold shift). Would you swap camera/object (rotate the object by default, hold shift for the camera)?
Actually I'd change lots of stuff in that 3D view (make light sources more obvious and make it possible to create custom environments), but I don't want it to become too complicated.
- Are you talking about that bug that makes it impossible to connect nodes ? It's been there for quite some time, but whenever I decide to go and hunt it, it just refuses to show. Whenever I know exactly what to do to repeat it, fixing it should be easy.
- Could you elaborate on ugly interface? Is that just you don't like colors/fonts/widget shapes, or that you'd expect all nodes be squares with a preview and all parameters in a separate panel? ;)
- I have to agree with the graph zoom one (I never use zoom unless I need it for a screenshot of a complex graph). Fixing this should be easy.
- Hmm I didn't get much feedback about controls for float parameters, could you be more precise? I tried to make them somewhat behave like they do in Blender.
- There are already tesselated meshes to test materials (last 2 meshes), and post-processing effects could be part of a 3D view redesign.
- I already have a full time job. I started Material Maker (2 years ago) for fun with shaders, I'd say that user feedback and awesome materials they show on Reddit motivate me today.
Oh, and I have a question. There was a download spike yesterday and I failed to find out where it came from. Any idea? If there was an awesome video or article somewhere, I'd like to be able to thank the author and read/answer comments/questions. Thanks!
"There was a download spike yesterday and I failed to find out where it came from. Any idea? "
maybe here : https://www.youtube.com/watch?v=kxDySLYU4XI&t=7m10s
I recommend you to take a look at ArmorPaint, I has a great interface and user controls. Maybe you can get in touch with it's creator luboslenko on Twitter and make and something together, I think you can make a great collaboration
ConceptGraph which is made with Godot too, has nice Color Scheme going with the nodes (Color Codes for different types), maybe take a look at it?
Wow! I found out about this program today and this is amazing! It took a bit to figure out, but with the examples and the documentation, it was a breeze! I hope that you'll continue to work on it and make it an even better version of itself! Anyway, I have two questions if you don't mind me asking. The first one is are we allowed to use the textures we create with this program for, more or less, commercial use? And secondly, do you plan on creating a discord server for the Material Maker community?
Thanks in advance, and thanks for making this awesome software!
Whatever you create with this tool is yours, and yes you're allowed to use your own assets as you wish (use in commercial projects, sell them...).
I don't plan to create a discord server, but if you want to show or share awesome textures you create, or just ask (or answer) questions about Material Maker, please feel free to join our subreddit.
exists the node to scale images?
Hmm if I understand what you need, the "Scale" (only in 0.92) and "Transform" nodes should do the trick.
Hi there. I tried updating to 0.92 from the itch app on linux but got an error saying "no manager for installer unknown." I can send you the stack trace if that helps. Thanks.
I'm afraid the download is just a .tgz file. Maybe I should take a look at this itch app. ;)
Hmmm, strange. Did it used to be packed in a zip file? Because previous versions worked fine in the app, but now it complains that there's no handler for the .tgz format when installing, even with 0.90, which I had previously installed from the app but no longer can since it's also a .tgz file in the current downloads. Installing the Windows .zip file works fine from the Windows itch app, by the way.
Of course, I can just download from the browser and it works fine, but the itch app is a nice way to install software and keep it updated when it works.
this person posted a video on youtube using material maker.
It talks about a "raymatching" addon but where do I get that addoon?
(1) Create a new material with File->New material. (2) select the (JSON) text from the pastebin address. (3) paste it into the graph view in Material Maker.
Thank you for this masterpiece.
Is there an option to export as glsl or as json? I'm using a custom engine, so exporting to a mainstream engine isn't an option for me, and I woudn't waste the benefits of a procedural texture by exporting a PNG. Otherwise, this tool seems perfect!
You can use the Debug node to get GLSL code. Not sure what you wanna do with JSON (everything is described as JSON but you'd need to interpret it in your engine).
Please it's telling not responding after showing rodlabz
Hmm could you give me more information? Which release did you try, on which operating system? Information about your graphics card would also be useful.
Thanks a lot in advance!
What a great tool! For a long time I've been searching for an alternative to proprietary programs like Substance Designer. This is exactly what I needed! There are some small issues and probably some features are missing, but it's being actively developed. I hope the author continues improving this awesome app.
Hey, wasn't sure if you were aware (checked the github issues but I didn't see any mention of this) Both DirectX and OpenGL style normalmaps generated in this are wrong. Not sure about the packed normal maps (2 channel normal map variant labeled as "default" in this program) are correct. I imagine they are wrong, but not entirely sure. Anyway, both DirectX and OpenGL style normal maps have the red channel represent the right side of the normals, meaning if you have something that protrudes outwards like bricks the red channel for each brick should be on the right, that in not the case in this program. They are on the left side. Super easy fix for people making textures in this: Use the decompose node and invert the red channel (top) and then recombine using the combine node.
Will note that the generated meshes here seem to give incorrect results with the corrected red channel which leads me to believe there is an issue with the tangents on these meshes. Could be a Godot issue because I do recall seeing this issue before in it.
That format parameter in the Normal node should not be used anymore. Just let it generate the "default" normals, which should render correctly in the preview. Correct normals are then generated when exporting for each engine.
And yes, the tangents on the preview are wrong (was an issue in Godot's default meshes when I started Material Maker, and fixed since then).
You can indeed trivially modify the normals format as needed using Decompose and Combine, but I'd recommend SwapChannels that is easier. And if you need new export options, please ask. :)
Thanks for the reply!
No, it is now fixed, but the first releases of Material Maker used a Godot release with the flipped tangents problem. All normal map conversion should now be done in the Material node, the format parameter of the Normal node should not be used anymore.
A cool and very promising program! Already quite stable and usable from my experience so far.
- Clicking and dragging on an output (or input) of a node would often drag the node around instead of creating a new connection line or removing the existing one. Scrolling or playing around with the zoom level can solve the issue temporarily but it keeps recurring.
- From a UX standpoint - although the manual is quite thorough and that deserves praise by itself - I'd really love to see some in-app tooltips (and previews, when possible) on the various outputs of a node.
- I'd love to have random value ranges for more parameters. UI-wise, this can be a small button next to a parameter field that when clicked will split the field into two fields- one for the minimum value and one for the max. It can be very useful to easily create variation. (e.g. in a node such as scratches it can be used to randomize the width or length of individual scratches.)
- Is there a way to set the screen rendering resolution independently of the output resolution?
- Zooming-in in the 3d preview pane tends to make the perspective a bit extreme. Is there a way to adjust the FOV?
- Is there a way to zoom in or out the 2d preview pane?
- tooltips everywhere is planned. most code is written, but tooltips themselves are not. ;)
- That's an interesting upgrade for the scratches node (it would be a couple new "randomness" parameters that affect length and width, so the new node remains compatible with older graphs).
- the rendering resolution is the one on the screen for 2D views and the output resolution for the 3D views.
- zooming in/out 2D preview: not yet, but planned.
That's awesome, thanks.
Some extra minor suggestions:
- Add opacity and opacity randomness parameters for the splatter node. A mix mode would be quite useful too.
- Add a small outline to the gradient stops in the gradient editors to make them easier to see.
- Allow zooming in and out of the node tree with Ctrl-Plus and Minus (Old dog's muscle memory)