Best way to assign color to low poly assets

I’m creating low poly assets for my game in blender. The models I’m creating have one color for one part(e.g. brown for trunk and green for leaves). I’m wondering what is the best way in case of optimisation to add color to different parts of model. This are the approaches I thought about:

  1. Just use multiple materials on single mesh.
  2. Bake texture of whole mesh in blender and then assign it to the object in unity.
  3. When creating model in blender keep different color parts as separate meshes(e.g. leaves and trunk would be two meshes) - then it would be one material per mesh.
    Maybe there is different better approach?

Vertex coloring and keep the meshes mostly combined. You can use a single material for every opaque object in your game if it’s setup like this.