Successful floor painting really does depend on the state of the floor. My number 1 garage which dates from 1975 has a slight dampness to the concrete floor.
Over a long time this was given three coats of proper paint - beige, then grey, then brick red. It has always been patchy and the tyres used to lift it. This is why I fitted carpet tiles and this holds back the slight dampness, because they have rubberised backs.
In my number 2 garage which dates from 1988, I laid a Visqueen membrane under the concrete, so there is no damp whatsoever. Once the concrete had cured, I gave it a couple of coates of brick red floor paint, and the whole thing still looks like new, but is covered with carpet tiles.
Here it is in 2012, just relaid and brand new.
