Creating a spiked facet surface

Hey there,

I'm trying to cover a surface with an assortment of different sized spikes, but I'm having a hard time figuring out how to do it easily. I made a lot of different sized spikes as parts and then manually placed them in an assembly but I need to do hundreds so I was wondering if there was a quicker way to do it. If I’m unclear, I'm essentially trying to recreate this type of surface on mostly curved surfaces:

Cheers

(and sorry if this is the wrong sub-section, I *think* it is a surfacing issue)

SolidworksSurfacing