Blender to Unity Custom Materials Export

So this is the question: i’m trying to make single rock bricks in blender to export them to unity and use as assets, so i went into blender, made the object, sculpting and all… using cycles rendering and a node editor to create a custome rock + moss materiale with a mix shader putting togheter diffuse and glossy + a bump vector, managing to get a very nice look out of it.

And here’s the problem.

It doesn’t seem to be possible to export the custom material to blender.

I can export the object i made, i can export the single texture file… but i just cannot find the way of exporting my custom material, thus making the entire process of creating the object itself… useless, since i can’t use it with the material i made for it in unity.

So putting it all togheter once again.

Exporting the object doesn’t export the material blender associates to the object, material is made up of two different texture and is made with a node editor personally modifying all the aspects of it, so even if i try to make a mixed shader material directly in unity is almost impossible to get the same effect i had in blender thanks to rgb adjusting and stuff, and i can’t find a way to export the material.

Anyone knows a way around this?

Thanks a lot

It’s also somewhat of a “don’t do that” situation. Movies vs. games are different worlds.

Blender, like any other modeling program, is mostly for rendering still frames or movies. For these, you can go nuts on complex CPU shaders, cloth deformation, raytracing, multi-constraint IK solvers … . Unity could/can duplicate lots of these, but you’d end up just cutting them to get your frame rate back up. You’re sort of abusing blender to make game assets (which is fine, as long as you know.)

Even making models is divided into lo/high poly artists. High-poly “movie” modelers seem more common, and it takes them a while to learn the low-poly tricks needed for games (and to even consider using a texture smaller than 4096x4096.)

From a game-making standpoint, you’d like to use a diffuse shader on trivial things like bricks. Specular if you have to. Bump-spec, multi-material only if the entire game is about stacking bricks.

Unless there’s some really, really amazing Blender or Unity plugin out there that I’m not aware of: No. There is no “easy” way to duplicate a Blender shader in Unity. You’ll have to code it yourself. (Bummer, I know. Blender’s shader editor is amazing)

Getting the material from Blender to Unity is possible. All you need to do is bake the material in Blender (and if you don’t know how to do that, there are plenty of YouTube videos to help) and save that image to where you know that it is. Then you have to right click in the assets tab in Unity and select “Import Asset”, import that baked image. Then drag that image from the assets tab into the object on the right. It then should apply it!