sprite-kit
SKView
Поиск…
параметры
параметр | подробности |
---|---|
showsFPS | Отобразите счетчик текущей частоты кадров в кадрах в секунду в представлении. |
showsNodeCount | Отобразите подсчет текущего количества отображаемых SKNodes в представлении. |
showsPhysics | Отобразить визуальное представление SKPhysicsBodys в представлении. |
showsFields | Отображение изображения, представляющего эффекты полей физики в представлении. |
showsDrawCount | Отобразите счетчик количества проходов чертежа, необходимых для визуализации представления. |
showsQuadCount | Отображение количества прямоугольников, необходимых для визуализации представления. |
замечания
SKView - это подкласс UIView, который используется для представления 2D-анимаций SpriteKit.
SKView можно добавить в Interface Builder или программно так же, как «обычные» UIViews. Содержание SpriteKit затем представлено в SKView в SKScene.
См. Также ссылку на класс SKView из документации Apple.
Создайте полный экран SKView с помощью Interface Builder
Типичным примером использования SpriteKit является то, где SKView заполняет весь экран.
Для этого в Xcode Interface Builder сначала создайте обычный ViewController, затем выберите содержащееся представление и измените его класс с UIView на SKView :
Внутри кода для контроллера просмотра в методе viewDidLoad возьмите ссылку на этот SKView, используя self.view:
В Свифт:
guard let skView = self.view as? SKView else {
// Handle error
return
}
(Указание охраны здесь защищает от теоретической ошибки, что представление не является SKView.)
Затем вы можете использовать это для выполнения других операций, таких как представление SKScene:
В Свифт:
skView.presentScene(scene)
Отображение отладочной информации
Текущая частота кадров (в FPS, Frames Per Second) и общее количество SKNodes в сцене (nodeCount, каждый спрайт - SKNode, но другие объекты в сцене также SKNodes) могут отображаться в нижнем правом углу представления ,
Они могут быть полезны при включении (установите значение true) для отладки и оптимизации вашего кода, но должны быть отключены (установлены в false) перед отправкой приложения в AppStore.
В Свифт:
skView.showsFPS = true
skView.showsNodeCount = true
Результат:
Создайте небольшой SKView с другими элементами управления с помощью Interface Builder
SKView не нужно заполнять весь экран и может совместно использовать пространство с другими элементами управления пользовательского интерфейса. Вы даже можете увидеть более одного SKView, если хотите.
Чтобы создать меньший SKView среди других элементов управления с помощью Interface Builder, сначала создайте обычный ViewController, а затем перетащите новое представление на контроллер вида:
Может быть полезно установить цвет этого представления на нечто, отличное от белого (здесь используется черный), чтобы его можно было увидеть более четко в Interface Builder (этот цвет не будет отображаться в конечном приложении). Добавьте другие элементы управления (UIView, две кнопки и ярлык показаны здесь в качестве примеров) и используйте ограничения, как обычно, чтобы выложить их на дисплей:
Затем выберите вид, который вы хотите быть SKView, и измените его класс на SKView:
Затем, используя редактор-помощник, перетащите его из этого SKView в свой код и создайте выход:
Используйте эту розетку, чтобы представить свой SKScene.
В Свифт:
skView.presentScene(scene)
Результат (на основе примера Hello World ):