DECALmachine

DECALmachine is a blender addon , which through mesh Decals, allows for surface detailing in a very non-committal, non-destructive, UV-less way. As such it represents an alternative approach to hard surface texturing.
In addition DECALmachine has deep Trim Sheet support, and supports Atlasing, as well as Baking to facilitate exporting to game engines like Unity, Unreal Engine etc.

Decals can be projected, sliced, created from grease pencil or edges. They can be material matched, and you can easily create your own.
Trims can be easily placed, cut, manipulated or removed - all directly in the 3D view.

Trailer (2.0)

Trailer (1.8)

DECALmachine 2.4 works with Blender 2.93

Features

Links

Buy

Support

If you need to get in touch with me to report an error , report tool misbehavior or have another problem READ THIS FIRST .

Attachments

decals

deferred_decals


trim_sheet

24 Likes

Wow, love the simplified approach to applying those textures. Great UI

This looks amazing for game assets creation. Great stuff!

epic. and bought.

@MACHIN3

Looks awesome! Can you export your crate model to ue4 and render it there?

P.S. how do you generate those strips for panel lines and are you doing follow active quad on them for uvā€™s?

Cheers,
n1k

Sent from my LG-D855 using Tapatalk

Looks very nice!

I assume these decals can be baked to a normal map, right? in my workflow i use substance painter and heightmaps/normal map stamps for similar effects

Very nice addon! :wink:

But how can I use this addon in combination with Substance Painter? I donā€™t think that I can fully quit using Substance and do the full PBR workflow/Normal stamping inside Blender?

Great addon! Iā€™m looking forward to checking it out when I have some free time, perfect fit for my current workflow. Thanks.

Want to play with it, but I donā€™t have the time right now :frowning:

I think yes you can bake the normal map after.

Donā€™t hesitate to make a vidĆ©o on how to export the result.

How can i use my own geometry and maps for decals? I tried using unmapped plane for decal projection but addon crashes.

You need to assign material for decal projection. Any material would do.

Thanks 3pointEdit!

That was my primary motivation in creating this, but itā€™s not quite there yet. For now itā€™s to be used in Blender with Cycles, as a hard surface design/concepting tool. Export to Unity/Unreal incl decal atlas generation is coming!

Much appreciated!

You can export it technically(=doing it by hand), but not yet using the addon. Itā€™s the next step in my roadmap and Iā€™m working on it already.

Yes, strip UVs are done using follow active quad, what a god send. I didnā€™t know about it initially and struggled to find a good way to auto UV the panel decals, but then came across this handy feature :slight_smile:

So, Iā€™m not sure about baking them. I donā€™t want to say its impossible, but I donā€™t think its straight forward or easy. A possible solution might involve using world space normals in between. The problem is the decal geometry can be rotated in all kinds of ways on the base mesh and so I donā€™t see a good way of combining decal normal maps with the baked base mesh normalmap. I need to investigate and research this in depth.

That said, the whole point of using decals(in combination with custom/weighted vertex normals), is to avoid having to bake normal maps. You can then take your decal geo directly into your engine(deferred rendering) and blend individual channels (instead of just alpha blending as in Blender/Cycles). This is done very successfully and prominently in Star Citizen and Alien Isolation and this is the workflow DECALmachine is aiming at.
The fact that the decals render as good as they do in Cycles(event though limited by just alpha blending) is a welcome surprise and makes the addon much more useful than initially thought.

Thanks VitaminCpp! If you are talking about baking the decals down to a normal map, then unfortunately, you canā€™t right now and perhaps ever. Itā€™s not the intended use case, see my previous reply to mzprox.

Happy to hear. Feel free to share comments, suggesttions, issues or artwork here or on twitter or via email.

Iā€™d love to be convinced baking the decals down to a normal map can be done, but I have my doubts atm. I havenā€™t researched it in depth yet, but there are serious roadblocks in relation to decal orientation and properly mixing decal normals with the baked base mesh normals.
Really, baking decals down is not the intended use case, as youā€™d loose the benefit of using decals in the first place. See my previous comment to mzprox.
Happy to hear your input on this however. Baking it to normals would definitely be cool to have.

Yes, currently the addon expects the decal to have a material before you project it - Iā€™ll add an additional check to make it work with ā€˜emptyā€™ planes. Iā€™ll post about how to add custom decals ASAP, but for now, itā€™s probably best to take any of the supplied decals, copy and edit it, change maps, etc.

Do you need to know anything specific? What kind of decal are you trying to do? Are you struggling with the ao_curv_height map creation?

I tried using mesh decals with normal channel in UE4 and it worked quite well. Itā€™s a good option to texture big objects with high res procedural materials and use these decals as details.
I suggest if itā€™s possible:
-try to generate blending masks for these decals as in my experiment the border of the decals remained somewhatvisible
-Make it easy to be able adding our own assets into the library


#decalmachine

1 Like

Is there a basic ā€œhow toā€ somewhere? Iā€™ve bought the addon, but when I add a decal, it is always positioned at the centre and isnā€™t snapped to any face of my cube. Do I need to set some values in user preferences to ensure it works properly?
Also, do I need to select the cube I want to put the decal on in order to add the decal or project it? Iā€™m suer once youā€™ve used it for a while itā€™s intuitive, but as an old guy with no instructions, thereā€™s a lot of guesswork.

EDIT: Also, The Machin3tools addons are not showing up, Iā€™ve tried manually putting the extracted zip into my addons folder and installing from file but none of the addons appears in my addons list.
Windows 8.1 64-bit with Blender 2.78

Seems like great addon. I will buy it for sure, if I will need some hard surface modeling.

Well itā€™s definitely possible if you use xNormal. I made this:

Here is is in UE4 for good measure:

xNormal gives you the option of baking a base texture from a tangent space normal. The problem is that you can only specify one base texture and the decals are currently not atlasā€™d in a single texture so in order for this to work you have to manually atlas all of your textures. If you are making your own decals with the intention of baking then I imagine you could just atlas them in advance to solve this.

There is another issue here which is that baking from a base texture means that if you have geometry based normal details that you also need in the bake, you will need to bake them out separately and composite the two maps together which while doableā€¦ kinda sucksā€¦ Baking to worldspace and doing a conversion may be able to solve this though Iā€™m not familiar enough with the process and which software could bake from both geo and a normal map at the same time. If you do go that route I think you will have to match the highpoly vertex normals to the decal geometry, because the decal geometry is a mess and doesnā€™t shade well (when triangulated for baking, xnormal wouldnā€™t accept the decal ngons) which may cause visible artifacts in a worldspace normal map.

Another thing I considered was baking the height maps and just converting them to normals because they can be freely rotated and oriented. Iā€™m not sure how well that would work though, especially over UV seams. The textures were channel packed though so I didnā€™t even bother to try, that was just too much effort.

I have no idea if this is possible with Blenderā€™s internal baker, I normally bake inside Substance Painter but downloaded xNormal just to do this because it was the only one I knew of that would recalculate an existing normal map to a new UV set.

TL;DR: You can do it in xNormal, but the process could be optimized way better. At the moment the biggest issue is lack of automatic atlasing, though you can address this with some foresight when making your own decals.

I suspect this addon will spawn a wave of change in gameart workflowsā€¦ just calling it nowā€¦

Edit: Also just as a final suggestion I do think you should consider making a better install guide. The text file you included isnā€™t formatted for notepad and so there are no linebreaks for most windows usersā€¦ Wasnā€™t a big deal for me but Iā€™m not surprised others are having issues.

1 Like

I think that you must put bigger that to do the things automatically and see the decals the users needs other plugin that cost 30ā‚¬, not only ā€œsuggestedā€. If the user donā€™t have that plugin when make operations only see a warning/error message. And a manual could help.

Think I may be wrong, apparently when baking a base texture that is flagged as a tangent space normal, xnormal will combine the texture baked normal with geometry normalsā€¦ I donā€™t really understand how this works, but it looks like it does. I get the impression that the compositing isnā€™t accurate though, would require more testing.

Edit: Also PLEASE document how to add custom decalsā€¦ This is a great, powerful addon but it is not very useful if users canā€™t make their own decals.

If I can add a custom decal, it would be useful.
With regard to baking, my idea is to bake the color map with a height map and then convert it to a normal map. If you can automatically achieve this operation within the addon will save a lot of time, but also for the actual work a lot of help.

Just the current functionality is awesome, and thereā€™s a huge amount of potential for growth. Well worth the cost. Definitely do need some documentation about creating more decals, as has been said. Just more documentation in general is always good - most users will be smart enough to follow along with your demo vids but it makes it hard to troubleshoot when something goes wrong.

So others are aware, currently the auto material matching doesnā€™t work if you use anything other than a plain glossy shader, but itā€™s easy enough to go into the decal node group and insert your own nodes in place of the glossy as long as your custom nodes can take a Normal input. Iā€™d say the default decal material could be refactored to make this even easier, but itā€™s workable as is.

I am having a bit of an issue with the Decal Slice, though. It seems to be creating geometry correctly but throws the error (in debug mode) ā€œAttributeError: ā€˜NoneTypeā€™ object has no attribute 'asset_M_library_pathā€ Seems like itā€™s not finding the correct path to the Asset Management folder, but I do have the Decals folder copied there, and can bring in the sample decals through AM with no problem.