Is it better to use multiple materials or bake texture on low poly assets?

I’m creating low poly assets for my game in blender. They are pretty simple, I just assign different colors to different faces (e.g. in tree leaves are green and trunk is brow). Before I just imported the to unity, but now I’m wondering if it’s better(in case of performance) to bake texture and assign it to the object? Or maybe I should split the object to different meshes in blender and assign one material per mesh?

Less unique meshes, less unique materials = less drawcalls.
Less drawcalls = very likely better performance (in some rather rare cases this might not be true however).

Textures get stored in memory. Drawcalls use CPU.

So, strictly performance-wise, your best bet would be to have multiple objects using the same single material with the texture being a texture atlas that contains the textures for all the different objects inside one image. Your objects will be UV mapped into their corresponding places on the atlas, and thus you’ll have just one drawcall (the other meshes will be batched) instead of a dozen, and dramatically reduced CPU load.

Since that may be more work than you require for results, I recommend you to atleast bake the texture for the mesh instead of using several materials to produce the same effect.

I’m doing the same thing your doing, making a game with low poly models, what I’ve been doing is adding the materials in the modeling software such as blender which I’m using that way when it gets exported the materials are also exported automatically. So I would say multiple materials. Although it shouldn’t make much of a difference which you use i Just find mine to be simpler.