Calling setScale() on sprite loses resolution

Hi, I have some images (helmets and other images) that I place in different areas, and I frequently need to scale them down. However, when I do so, they don’t look nearly as nice. I don’t know if it’s antialiasing or something else.

Is setScale(x) (where x < 1) the best approach for making it smaller or is there something better for retaining quality?