Author Topic: BTM Unity shader property automatic link names  (Read 4156 times)

I am looking for the exact names that I need to use in my shader property in Unity so that BTM automatically links its outputs.

I can't find this information anywhere. Only thing I was able to do was sort of figure it out by using the default Unity shader and use the names there.

But then I can only guess that they are what they are. And only few of them.

I know BTM can generate many types of maps, so far I was only able to automatically link : Diffuse map , Normal map , Height map.

What are the complete names of the maps BTM generate as a texture map and what are the shader property names I need to use in my custom shader?

Also , it seems like maps like AO , are actually just been embedded into diffuse map or something like that as I don't see any AO maps being generated as a separate texture maps. ( I can see some changes when I change AO properties in Unity Inspector of BTM , but I don't see actual AO map being generated) If this is normal, which maps are generated as actual texture map, and which maps are being embedded into what maps etc.




On my second guessing, I think BTM generates map if it can find suitable shader property names that can link to , otherwise tries to bake them into diffuse map etc... is that right?.. :D

Yes, Unity only has a limited number of channels B2M can automatically plug to (diffuse, normal, specular, opacity, emissive).

The other channels won't be generated unless you check "Generate all outputs".
Although these channels won't be automatically plugged, you can use them in your custom material by selecting the outputs manually in its inspector.

Ok, so what are the official shader property names that I need to use?

Example : diffuse = _Maintex

etc..

Also what if I want to generate the other non automatic maps but only generate thoes that I want to ?

I am worried, if I "generate all" to get all the maps when I actually need one of few other ones that aren't automatically linked, then I will be wasting memory for running the game.

Is there any selective ways to get the maps I want to generate?

My request sounds like logical to me.. but lets hear.

Only _MainTex, _BumpMap and _ParallaxMap are supported by Unity as separate slots. Then the inspector allows you to choose what to put in the alpha channel of the diffuse (height, emissive, specular, opacity...).

You should be fine with these, as the AmbientOcclusion and Curvature outputs can be baked in the diffuse through some of their parameters.
Bump and displacement are only useful when creating complex materials for precomputed CG.