Пулы SKSpriteNode в iOS 8, похоже, выделены для перекрывающейся памяти

Я мог бы что-то упустить. Но мое текущее приложение в магазине приложений работает в iOS 7, но в iOS 8 полностью отказывает, потому что оно не создает предварительно выделенный пул спрайтов. Похоже, что они записаны на один и тот же адрес, если спрайты не имеют совершенно разных свойств.

В iOS 7 следующий код создает набор из 4 уникальных объектов. В iOS 8, тот же код производит набор только с 1 объектом:

  NSMutableSet *aSet = [NSMutableSet set];
  SKColor *sameColor = [SKColor redColor];
  CGSize sameSize = CGSizeMake(10, 10);

  for (int i = 0; i < 4; i++) {

      //allocate a brand new sprite
      SKSpriteNode *thisSprite1 = [[SKSpriteNode alloc] initWithColor:sameColor size:sameSize];

      [aSet addObject:thisSprite1];

  }

NSLog(@"aSet Count: %i", aSet.count);

iOS8 Результат:

2014-09-09 15: 06: 43.065 МСМ [383: 27490] Количество счетчиков: 1

Я схожу с ума? Удивительно, но почти все мое приложение основано на этой концепции кода, повторяемой снова и снова. Если я делаю то же самое, но использую что-то вродеNSObject, то проблема исчезает, поэтому, похоже, новое изменениеSKSprite, Я знаю, что могу обойти это с некоторыми сумасшедшими вещами, но это огромная боль, так как мне не нужно было этого делать, и я надеялся избежать подачи другой версии.

Ответы на вопрос(1)

Ваш ответ на вопрос