Когда я запускаю свою игру SpriteKit, я получаю эту ошибку несколько раз в консоли. Насколько я могу судить (хотя я не совсем уверен), сама игра не затронута, но ошибка может иметь некоторые другие последствия, а также переполнять консоль отладки.CUICatalog: Invalid Request: запрос подтипа без указания идиомы (откуда он исходит и как его исправить?)
Я провел некоторое исследование ошибки и нашел несколько возможных решений, ни одна из которых, похоже, полностью не работала. Эти решения включают поворот ignoresSiblingOrder
до false
и указание текстур как SKTextureAtlas(named: "atlasName").textureNamed("textureName")
, но это не сработало.
Я думаю, что ошибка приходит где-то от использования текстур и текстурных атласов в каталоге активов, хотя я не совсем уверен. Вот как я реализую некоторые из этих текстур/изображений:
let Texture = SKTextureAtlas(named: "character").textureNamed("\character1")
character = SKSpriteNode(texture: Texture)
также:
let Atlas = SKTextureAtlas(named: "character")
var Frames = [SKTexture]()
let numImages = Atlas.textureNames.count
for var i=1; i<=numImages; i++ {
let textureName = "character(i)"
Frames.append(Atlas.textureNamed(textureName))
}
for var i=numImages; i>=1; i-- {
let TextureName = "character(i)"
Frames.append(Atlas.textureNamed(textureName))
}
let firstFrame = Frames[0]
character = SKSpriteNode(texture: firstFrame)
Приведенный выше код используется только для создания массива, из которого анимировать персонажа, и анимации прогонов полностью штраф.
Для всех моих других спрайт-узлов я инициализирую SKSpriteNode(imageNamed: "imageName")
с именем изображения из каталога активов, но не внутри атласа текстуры. Все изображения имеют версии @ 1x, @ 2x и @ 3x.
Я не уверен, есть ли какие-либо другие возможные источники для сообщения об ошибке, или если приведенные выше примеры являются источниками ошибки.
Это просто ошибка с комплектом спрайтов или законная ошибка с моим кодом или активами?
Спасибо!
Эта ошибка остается в версии Xcode 7.3 Beta. C'mon Apple –
Это «уходит», если загружать текстуры непосредственно из атласов, а не с помощью 'initWithImagedNamed: @" somestring "и тому подобное. – Jonny