I am playing with a low-poly/color-ramp style that is somewhat similar to pixel art in the sense that I want to paint individual quad faces sharply with different materials picked from a list (quite like painting square pixels with colors from a palette). The end result would be an object with 3 to 5 different shader materials assigned for certain faces.
The standard way to do that is to select the wanted faces, go to the materials list, select the desired material (different from the one applied to the object) and click assign. Then I have to deselect the painted faces, select the new faces to paint again, select desired material (again, since it resets to default material assigned to the whole mesh), press assign again and so on. This flow is way to cumbersome to feel like "painting" the faces in a quick way by single clicking or dragging over faces.
The flow I would try to achieve is: select a material on the list, then, in face edit mode, simply assign the currently selected material to any face I click on, with a single click. Paint multiple faces by click and dragging over them like in MS paint with pixels would be great but I think is too complex to pull off.
Do you guys think there is any way I could achieve that workflow with a script? If possible, where should I begin with this? Thanks in advance for any pointers.