Попытка запустить 'Cut Scense Video' перед входом в мою игру Игра отлично работает. Я создал отдельную сцену, которую я назвал «StartScene», чтобы воспроизвести мою сцену. Сборка удалась, но когда она добралась до фрагмента сцены на симуляторе, я получил пустой серый экран. Я выполнил поиск в Интернете и получил много проблем с изменением размера видео, однако Apple Developer говорит следующее:
При создании видео узла его свойство size инициализируется в соответствии с базовым размером видеоконтента, но вы можете изменить его, если хотите. Видеоконтент автоматически растягивается до нового размера.
Пример кода, скопированного с Apple Developer:
let sample = SKVideoNode(fileNamed: "sample.mov")
sample.position = CGPoint(x: frame.midX,
y: frame.midY)
addChild(sample)
sample.play()
Вот мой код в моем StartScene.swift для воспроизведения вырезанной сцены:
import SpriteKit
import GameplayKit
class StartScene: SKScene {
override func sceneDidLoad() {
let openingVideo = SKVideoNode(fileNamed: "MyCutScene.mp4")
openingVideo.position = CGPoint(x: frame.midX, y: frame.midY)
addChild(openingVideo)
openingVideo.play()
}
override func touchesBegan(_ touches: Set<UITouch>, with event: UIEvent?) {
let gameSceneTemp = GameScene(fileNamed: "GameScene")
self.scene?.view?.presentScene(gameSceneTemp!, transition: SKTransition.doorsCloseHorizontal(withDuration: 1.0))
}
}
Возможно, это ошибка новичка в простом форматировании сцены вообще. Я думал, что это будет довольно просто. Видео сохраняется в комплекте приложений в разделе «Активы», и да, я убедился, что имя совпадает с тем, что я вставил в строку кода. Последний фрагмент кода - это просто мой переход к GameScene с функцией touchesBegan.