SKVideoNode воспроизводит прозрачное видео иногда, но не всегда
У нас есть SKVideoNode
что мы добавляем к SKScene
в игре SpriteKit, и видео mp4 воспроизводится очень хорошо, возможно, в 90% случаев, в 10% случаев оно просто воспроизводит прозрачное видео, а звук воспроизводится очень хорошо.
Под прозрачностью я подразумеваю, что это видео находится поверх нашей игровой доски, и когда оно глючит, игру можно увидеть на виду ниже, хотя ничто не реагирует, потому что видео узел расположен поверх всего, что блокирует взаимодействие с пользователем., Звук из видео все еще играет нормально, поэтому я знаю, что он пытается воспроизвести.
Это абсолютно несовместимо. Видео воспроизводится нормально по большей части, но, как кажется, в 10% случаев, оно просто не передает никакого видео контента на узел, только аудио.
Мы видим это во всех версиях iOS.
Наш код узла:
NSURL *fileURL = [NSURL fileURLWithPath:[[NSBundle mainBundle] pathForResource:@"intro" ofType:@"mp4"]];
AVPlayer* player = [AVPlayer playerWithURL:fileURL];
SKVideoNode* introVideoNode = [[SKVideoNode alloc] initWithAVPlayer:player];
introVideoNode.size = CGSizeMake(self.frame.size.width,self.frame.size.height);
introVideoNode.position = CGPointMake(CGRectGetMidX(self.frame), CGRectGetMidY(self.frame));
introVideoNode.name = @"introVideo";
// this video plays over top of many other SKSpriteNodes
introVideoNode.zPosition = 8000;
[self addChild:introVideoNode];
[introVideoNode play];
Мысли?