Vertex colours not blending across triangle face

Assigning colours to vertices of procedurally generated mesh. Noticed the colours seem very ‘polarized’ around the vertex and not blended evenly along the face of the triangle. Is there a setting I’m missing, like the FilterMode when creating a texture? Is the answer just to create more vertices?

This is the shader I’m using : http://wiki.unity3d.com/index.php/VertexColorUnlit

Quad colour code :

// -- Colours --

colors[0] = new Color( 1, 0, 0, 1 );
colors[1] = new Color( 1, 1, 1, 1 );
colors[2] = new Color( 0, 0, 0, 1 );
colors[3] = new Color( 0, 0, 0, 1 );

mesh.colors = colors;

// ----

example :

From the linked page:

Both shaders allow for overbrightening, so using (.5, .5, .5)
as vertex color values results in 100% brightness, and values above that
brighten the texture accordingly, as shown by the VertexColorUnlit shader:

Meaning, you need to adjust your original colors to be half as bright to not blow out the highlight, or modify the shader.