A first alpha for 1.4


This is the first of a (I hope) short series of alpha and beta releases leading up to Material Maker 1.4. Porting Material Maker to Godot 4 has been a lot more work than I initially thought, mainly due to the fact I couldn't resist the urge to rewrite many features (such as shader code generation and rendering, that are the "keystone" of Material Maker) and implement new stuff.

As always, thanks a lot to everyone who donated here on itch.io or support this project on Patreon, suggested new features or reported bugs, posted awesome materials on the Material Maker website, or contributed new nodes or features. Speaking of this, Material Maker 1.4 will have a whole lot of new nodes contributed by williamchange (some of which based on an old PR made by Theaninova), and a huge UI redesign made by Jowan-Spooner (and more PRs he made are nearly ready for next alphas).

Note that this release is an alpha, so please make sure you use a copy of your 1.3 work to test it.

Known bugs

  • Subwindows are not scaled correctly if the UI scale is not 1.
  • This is intended, but worth mentioning: user settings are saved in a different directory (so using 1.4 alphas should not affect your 1.3 configuration).
  • Many new features are not documented yet.
  • The lists of contributors and patrons in the About dialog has not been updated, this will be done for 1.4 stable.

General

  • Shader code generation has been rewritten completely. It should now be faster and generates smaller shaders (unused functions are now removed) with nice comments showing which code is generated for each node.
  • Material Maker now has flexible UI layout: all panels (except the Project panel) can be moved anywhere in the window or undocked. Material authoring and Painting can have different layouts, so you can define a suitable workspace for both workflows.
  • Theme support has been greatly improved, and many custom UI components are now themeable. A new Modern theme has been added and old themes have been improved (contributed by Jowan-Spooner).
  • The Library panel has been redesigned (contributed by Jowan-Spooner).
  • The Add Node popup has been updated and optimized. It is now themeable and has better search capabilities (contributed by Jowan-Spooner).
  • Hover copy and paste has been implemented on Float, Color and Gradient editors (contributed by Jowan-Spooner).
  • Support for GLTF 3D models has been added, and dropping a .obj or .glb file into the 3D preview panel will now set it as preview model.
  • In the 3D Preview panel, the default cube mesh has been replaced with a chamfered cube and the plane with a bent plane (chamfer and curvature can be modified in the mesh configuration popup).
  • Polygon and polyline parameters (used by the sdPolygon and PolyCurve nodes) can now be edited directly in the 2D Preview panel (new parameter types mentioned below also have their editors in this panel).

  • A shader error diagnostic tool has been added. It can be shown by clicking on the new "console" button in the status bar and shows shader compilation errors with clickable links that open the node editor in the (in)correct section.
  • The painting tool now has easy options to control stroke width and opacity using stylus pressure.
  • The shader code editor now has a Find/Replace tool.
  • An option to delete rescued unsaved projects at startup has been added.

Nodes

  • Material Maker has a new MeshMap node that automatically bakes maps (position, normal, tangent, curvature, occlusion or thickness) for the current custom mesh. This provides a better workflow for "smart materials" since the maps are recalculated automatically when selecting a new mesh in the 3D preview.

  • Many new 2D and 3D SDF nodes have been added (contributed by Theaninova and williamchange).
  • The Math and Vec3 Math nodes have new operations (contributed by williamchange).
  • A Shard FBM noise node has been added (contributed by williamchange).
  • A Tex3D Uniform node has been added (contributed by williamchange).
  • Classic, Generalized and Anisotropic Kuwahara filter nodes have been added (contributed by williamchange).
  • The Float and Gradient parameter editor widgets have been redesigned (contributed by Jowan-Spooner).

  • The image picker UI has been improved (contributed by Jowan-Spooner)
  • A new Splines parameter type (that can be edited in the 2D preview directly) as well as a new Splines node have been added.

  • A new Pixels parameter type as well as new Pixels and Smooth Pixels nodes have been added. This can be used to create small images to be included in materials.

  • A new Lattice parameter type and a new Distort node have been added. It can be used to apply a grid based distortion to its input.

  • The 2D and 3D SDF Boolean and Transform nodes, the 3D SDF Color node and the Tex3D Transform, Blend Select and Shape Select nodes are now variadic (contributed by williamchange).
  • The Blend node now has Hue, Saturation, Color and Value blend modes (contributed by williamchange).
  • The Spherize node has been improved (contributed by williamchange).
  • The documentation for many nodes has been improved (contributed by williamchange).
  • Advanced buffers now have a 32 bits option.

Bug Fixes

  • Small fixes in the GLSL parser
  • Optimized polygon/polyline parameter

Miscellaneous

  • Material Maker is now based on Godot 4.3.
  • The MacOS export has been modified so Material Maker can be installed easily (contributed by williamchange).

Files

material_maker_1_4a1_windows.zip 72 MB
18 days ago
material_maker_1_4a1.dmg 95 MB
18 days ago
material_maker_1_4a1_linux.tar.gz 65 MB
18 days ago

Get Material Maker

Download NowName your own price

Comments

Log in with itch.io to leave a comment.

(+3)

Congrats for the good works everyone involved!!

(+1)

Absolutely love it !!!

(+3)

This looks fantastic.

(+3)

Bravo! This release is looking great.