BATS - Material Editing With Layers - RELEASED

(Nomo) #101

I would like to use procedural materials. Currently BATS will destroy the material by “reset” and under shader, it indicates that output is not available - which I understand why, since you have set the shader workflow to refer to the asset file.

I wonder if it’s possible for BATS to not destroy the material with reset and allow the user to simply place procedural material in a layer and build on top of that with another procedural material on a different layer, etc. Perhaps I’m misunderstanding the workflow - this is intuitive to me based on my experience with photoshop.


(Joshua Knauber) #102

It uses Eevee, so it’s 2.8 only yes.


(Joshua Knauber) #103

Not sure what you mean. As I said, if you want to use a procedural material on a layer you have to place it in a node group in the asset file. The outputs of that node group have to be Color, Metalness, Roughness, Height and Normal. Then you can use the material as a shader on your layers.
The reset button is there because BATS needs the node tree to be set up exactly the way it generates it. meaning you can’t just edit the node tree because then it’s not possible to find the layers again.


(Nomo) #104

I guess I’m just having a difficult time understanding. I’ll just wait for the tutorial.


(sirmaxim) #105

Check the documentation over on the blender market. It looks to me like if you took everything before the BSDF and grouped it, named it __ShaderName and put it in the correct blend file, you could simply assign it to slots in the addon.

This fact makes me want this addon. However…

My current workflow is to bake high to low poly normal map, generate a curvature from that and use that to create edge/cavity masks on the low poly. I’m not sure how I would use this in my workflow.

Is there a way to add the baked normal map as a layer that blends with the material normals?


(Joshua Knauber) #106

Sure, you can just add a layer and use your baked normal map as a texture in the normal channel.
You would have to make sure that the blending mode of the other normal maps you add is set to something that doesn’t completely replace this map, but that should be possible.

And the edge masks can be used as textures in the procedural masks.


(sirmaxim) #107

I wish a standard blend modes would work for normal mixing, but that has not been my experience. I have found however, that this works well: Baking Normals within other maps?

Perhaps there’s room for something like that? :wink:

It’s also possible to use this to great effect: to get those results. I use both of those regularly to bake normal maps to a linear space texture with an emission bsdf. Saves the hassle of baking normals multiple times which takes a while.

Example use with a random wood texture and proc to bump:


(Joshua Knauber) #108

I’ll put it on the list, but don’t expect this to be added anytime soon


(Nomo) #109

Sorry for not having read the documentation. I was not aware. After reading through it, I understand that the asset file itself needs to be edited and that the group nodes need to be under materials for BATS to recognize them using “_” labeling. This is fine. However, I am trying to use shaders that I bought from 2016 called Cycles Material Vault, and the group nodes consist of mix shaders that do not neatly separate into Color, Metalness, Roughness, Height. Any advice?


(Joshua Knauber) #110

There’s not really a way to do it then I guess. You could try to rebuild the he shaders in a way that they look the same, but use a principled shader, but there’s no easy way.


(z01ks) #111

Hi Joshua! Great work and initiative with this add-on! I really wish you all the best with the development. Just had a question in the meantime. My first time messing around with the tool, I was trying to add a layer of paint on metal and raise the height of the paint. It produces a very subtle height difference with a lot of pixelation. Then again, to be honest I haven’t gotten normal maps to work in 2.8 yet… I’m not educated on the different bit depths and color spaces and whatnot, but would you happen to have an explanation for why this is happening?


(Joshua Knauber) #112

Check in the settings panel under material. There’s an overall height setting, which you can increase to raise the maximum height of the material.


(giacometti777) #113

Is it possible to use BATS with Cycles? I’ve had issues with my EEVEE configuration lately and would like to use it that way lag notwithstanding.


(Joshua Knauber) #114

Bats is meant for real-time material editing, but theoretically you can use the cycles preview as well. It would just kind of ruin the purpose of the add-on, but it’s possible just by switching to rendered view with cycles selected as the render engine.


(CLuss) #115

Looking good!
Can it be used for hand painting?..Say just plain flat color layers with masks and blending modes like in PS.


(Joshua Knauber) #116

In a recent update there was a setting added, that’s called “transparent layers” which should give you exactly that behavior.

1 Like

(CLuss) #117

Couldn’t we just have stuff like the constant color and the blending modes per layer? Directly into the layer list instead of having it in a separate panel on the right side?
I know it’s already there, is just more of a UI thing.


Great addon btw. :slight_smile:


(Joshua Knauber) #118

Sure, there could be an option for that.
Would the blending mode change the mode for all channels though?
Or could you just set your channel drop-down to color, if you’re only using that anyway?


(Joshua Knauber) #119

Hey, the update for V1.0.3 is now out on gumroad and blendermarket.
It fixes a few bugs including the recent API change and brings some new requested features.

Here’s the changelog:


  • Added button in BATS side panel to append the assets so files which don’t need BATS are kept cleaner
  • Added option to display constant color directly in the layer view
  • Added blending mode for layers option which will set the blending mode for all channels
  • Added option to add custom image slot to mask node groups by naming the input “IMAGE_nameofyoursocket”
  • Added ID Mask to asset file
  • Set tilesize to resolution when baking (should give speed improvements in some cases)
  • Fixed texture masks not baking correctly

In addition to adding some bigger features I will now also focus on creating some tutorial content.


(Joshua Knauber) #120

If you have any issues with the newest version and you have blender crashing, please send me a message!