Simplified Material Using Texture Baking
Corvinus started this discussion in Model Export and Render

To start off with, I should say: the Mecabricks materials are truly amazing. I have seen many people try to create realistic LEGO materials, and except for Animal Logic, Mecabricks has been the only case where I have been fooled into thinking I was looking at a photograph. The shader system is a complex network of what has to be at least a hundred nodes, coming together to create an insanely flexible procedural material with only a few manual inputs.

However, the high amount of nodes takes an extremely long time for a render engine, especially Eevee, to compile, somewhat reducing the point of a realtime renderer. This problem is added to by the fact that the customizable deformations, scratches and grunge which contribute greatly to the realism of the material are only available in Cycles.

I'm sure there is a good reason for this, and it is not my point here to criticize what I have already stated is a glorious feat of procedural genius, and the best option for its purpose (a relatively few materials for any part with any decal). But for specific minifigures that I have no intention of changing or customizing, the flexibility is not needed. I set out to find a way if I could somehow condense the procedural material into a static principled material that would render instantly.

As a disclaimer: I harbor no delusions that this is 'my own' material (it is literally impossible to create this material without already having the Mecabricks Blender Lite addon at least, and the Advanced addon for these results), or that I came up with this technique. It is a fairly obvious technique, and more or less everyone uses it for something. But I thought it was very useful, and it might be useful to other users here as well.

With that out of the way, I will explain my process. I used a torso part (3814) for this example, but some variation on this process should work.

First, as none of the existing UV maps for this part were suitable for mapping the entire thing, I created a new one. There are many good tutorials on UV unwrapping, and they would help in this case. This was mine:

https://i.imgur.com/0Sxbnco.png

Next, I created a new image texture within the Mecabricks material (connected to nothing) and with it selected and the render engine set to Cycles, I baked Rougness and Normal maps. This tutorial will help with Baking. https://www.blendernation.com/2021/06/08/baking-procedural-materials-to-image-textures-in-blender/?fbclid=IwAR381mNLO1ollNAlxbUNJnTZEpMySw6U271qOyJiBn29z4SILlRGf3Tu9_Y (You can bake Normal maps, though.

After saving the baked textures, I created a new material, shown here.

https://i.ibb.co/FY4bD4Y/Bake-material-node-tree.png

These are the results. The one on the left is original Mecabricks and the one on the right is the principled material.
In Eevee:

https://i.ibb.co/PF3d6Hr/Bake-test-Eevee.png

In Cycles:

https://i.ibb.co/HVjwYD9/Bake-test-Cycles.png

2 replies · Page 1 of 1

ok, but you used blender?

Yes, I just realized I neglected to mention that. Apologies.

Advertising
2 participants
Avatar of Corvinus
Avatar of zaphire

LEGO, the LEGO logo, the Minifigure, and the Brick and Knob configurations are trademarks of the LEGO Group of Companies. ©2024 The LEGO Group.

Mecabricks, the Mecabricks logo and all content not covered by The LEGO Group's copyright is, unless otherwise stated, ©2011-2024 Mecabricks.