Как применить динамический gif-файл к SKSpriteNode в xcode?

#ios #xcode #sprite-kit

#iOS #xcode #sprite-kit

Вопрос:

У меня есть динамический gif-файл, который был перенесен в мой проект, я намерен загрузить его в свою сцену с помощью фрагмента кода:

 let pen = SKSpriteNode(imageNamed: "basketball.gif")

override func didMoveToView(view: SKView) {
    backgroundColor = SKColor.whiteColor()

    pen.position = CGPoint(x: size.width * 0.5, y: size.height * 0.1)
    addChild(pen)
}
  

Но он показывает только статический, а не динамический. Может ли кто-нибудь подсказать мне, почему это не может работать? Спасибо!

Комментарии:

1. Для создания анимации вам понадобятся отдельные текстуры. Afaik, gif нельзя использовать в SpriteKit … Но я этого не тестировал. Итак, инициализируйте текстуры, затем используйте SKAction.animateWithTextures для анимации.

2. Интересно, он говорит, что получает статическое изображение, так что, возможно, его можно использовать. Интересно, генерирует ли он текстуры индексов для нас? Я предполагаю, что нет, и вместо этого UIImage преобразует его в 32-битное изображение

3. Было бы проще просто разбить этот gif на рамки PNG и прикрепить в виде листа спрайтов, а затем анимировать его.