0

我正在尝试使用在 Xcode/我的机器之外创建的先前图像资产中的现有资产创建纹理图集。

将图像导入 Xcode 不会“拆分”它,我不确定如何告诉 Xcode / SpriteKit “图集”位置在哪里。

除了使用图像编辑器并手动将每张图像作为资产使用之外,我如何让 Xcode 相信该图像已经是真正的图集了?

最后,使用图集是否值得,因为我必须自己循环浏览图像才能制作动画;我最好硬编码(!)atlas 条的 x/y 位置并在 SKAction 中执行某种旋转/循环代码?

4

1 回答 1

0

决定将旧图集拆分为单独的图像,然后使用 .atlas 文件夹加载它们。还决定加载所有文件名并对数组执行 .sort ,然后遍历该数组并以“正确”顺序加载文件名。

下面的函数片段:

func AssignTextureAtlas(atlas: SKTextureAtlas)
{
    var arrTextureNames: Array<String> = []

    //Create texture atlas array
    for (var i = 0; i < atlas.textureNames.count; i++)
    {
        var myText = atlas.textureNames[i] as String
        arrTextureNames.append(myText)
    }

    arrTextureNames.sort( {$0 < $1})
    for (var i = 0; i < arrTextureNames.count; i++)
    {
        var myTexture = atlas.textureNamed(arrTextureNames[i])
        arr.insert(myTexture, atIndex: 0)
    }
    //...more code here, until:

    self.runAction(SKAction.repeatActionForever(SKAction.animateWithTextures(arr, timePerFrame: 0.1, resize: false, restore: true)), withKey: "TEST")

}
于 2015-01-09T18:52:34.983 回答