for (1)
if colormaterial enable, and the color array enable too,
each vertex has it’s own material parameter?
or
3 vertices share one material parameter( and which one? )
Each vertex has its own ambient and diffuse colors. However, flat shading - which you’re likely referring to - can still be independently enabled using glShadeModel.