EVA foam can be painted to give it a more finished look and custom color. Just about any paint can be used. It’s not necessary to use primer first but you will want to use something that can give you a nice thick coat as a base in order to smooth out the texture of the foam. At the moment I really like Benjamin Moore Aura paint as a base layer, but it can be difficult to work with as it dries very fast. Some people also use Plasti Dip, Mod Podge or even just watered-down white glue to seal and strengthen the foam. It’s important to realize though that some paints and coatings will dry hard, which can lead to cracking if the foam will be bending back and forth during use. For pieces that need to bend a lot, a flexible paint like Plasti Dip is ideal, but most acrylic paints are quite flexible as well.
I generally use brush-on paint because I feel like it gives me more control over the process and outcome, plus you can do it indoors, but spray painting can save you time if you can get the hang of it.
I apply one thick coat of Aura first and then 2 to 5 coats of the final paint, letting each coat dry before the next. For black items I use Delta Ceramcoat Black acrylic, as it has a nice flat, matte look. It seems like matte paints appear lighter in color when they dry though, so in some lighting it can appear more grey than black. If you want a black as dark as possible I would recommend something more glossy (although you will then have much more shine, which can make items look white when photographed with flash.)
For items of other colors I use regular acrylic paints from the local hobby store. I’ve found some brands seem to cover very well, and some take way too many coats to hide the original color of the foam. Among the small bottles, look for the brands Americana and Delta Ceramcoat and avoid Anita’s and Folkart, but if you can get the taller, more expensive tubes of paint, they will generally provide much better performance. Also keep in mind that some colors are naturally difficult to cover with- for example, light colors like yellow and red will require more coats than dark colors like brown and blue. Aura paint is also a good option for the light colors with little ability to cover.
I recommend thinning down the paint just a little with water. If it is too thick the paint will start to dry while you are in the middle of a coat and you will end up with very harsh brush stroke marks in the final product, but inversely if it is too thin it will require many more coats. In the sweet spot the paint spreads easily, covers well, and self-levels a bit before drying. As a general guide I shoot for a consistency where when I stick my brush in and then remove it the paint that is briefly pulled up by the brush returns to level no sooner or later than in half a second, if that makes any sense.
I generally paint pieces of different colors separately, and then glue them together after painting. Glue doesn’t stick well to painted surfaces though, so when you need to glue something onto a painted surface I recommend first removing some of the paint directly under where the new piece is going. You can do this with an xacto knife. Sometimes it will peel off nicely if you cut the outline of the section first, otherwise you can just scratch it a bit to get some of the paint off. Sometimes it won’t be feasible to paint different colors before gluing everything together, in which case you’ll just have to use masking tape to protect the rest of the item as best as possible.
A decent brush will help a lot in making the coats smooth. Buy a set of nylon or taklon brushes with heads about an inch wide and smaller, and replace them when they start getting frayed.
In between coats I hang items over the edges of a cardboard box to dry, so I can paint and dry all the sides at once.