Как сделать бесконечный спавн с условием?
Вы можете попробовать заранее создать эти 10 точек прямо на сцене за камерой и во время игры просто перемещать их на место спавна. Это кстати будет и не так ресурсозатратно, потому что destroy и instantiante тяжелые функции. 
Как реализовать ваш код пока не знаю, надо думать. Но, по-моему, вариант который я предложил не хуже.
В общем  у меня была схожая ситуация нужно было сделать так что бы на сцене всегда было 15 платформ, платформы когда игрок к ним касается удаляются а новые создаются. В общем вотprivate int pointCount = 0;

void Update(){
if(pointCount <= 10){
pointCount++;
//создаёшь точку 
}
А в коде  где записано соприкосновения игрока и точки сделай просто что бы когда сожрало одну точку то pointCount --; всё.