Best method of colouring 3D Blender objects for use on mobile

I’m developing a 4X game for Android and I have created a few 3D hex tiles for use in the final game board. The look I’m going for is essentially low poly art.

I’m having a few issues:

  1. Colouring my objects in Blender yields darker/inaccurate colours when imported in Unity. This is true even when I UV map the colours and import the result as a png file. From what I’ve read, this is to do with Unity reading the material values differently than Blender?

  2. If I use Vertex Painting I get nice results in Blender, but when I import into Unity with a custom vertex shader, the edges lose hardness and the low poly look is ruined.

To be honest, I’m not sure if vertex shading is possible on Android anyway. So my question simply is: What’s the best thing I can do to maintain the low poly look I’m going for? Should I continue with vertex painting and see if it’s possible to make a vertex shader that not only works on Android but also maintains hard edges (though I’ve read here that this is impossible)? Failing that, how exactly do I properly import the right colours into Unity?

Any help with this is appreciated! :slight_smile:

Here’s the look I’m going for: What’s the Deal with Low Poly Art? – Sessions College

So I’ve finally figured out what is in my opinion, the “best” way to do it.

Firstly, seeing as Blender colours don’t like to import right, it is a good idea to make your own colour palette in a program like Gimp, then import it as a .png (though I’m sure you could use other formats) to the UV editor in Blender and painstakingly unwrap your mesh, making sure to size it properly and avoid overlapping if you plan on baking on ambient occlusion.

Rather than explain it in my own words read this tutorial, which goes into detail about the process.

Anyway, here’s my result.


When it comes to picking colours for low poly objects this site has some fantastic palettes that its community has put together.