2

我找不到将这种图像用作我的游戏的图块集的方法。有没有办法做到这一点,或者我应该一个一个地添加我想要的所有对象?

我尝试添加一个新的 Grid Tile Set,然后添加一个 Single Tile Group,但是如果我尝试在 Tile Map Node 中使用它,它将使用所有图像作为一个块的纹理。

我不知道这是否可能,但如果你能帮助我,我将不胜感激。

4

2 回答 2

3

不幸的是,您将不得不手动将图像分成较小的图像..

您想要的功能不存在。

于 2016-11-11T14:25:40.500 回答
2

您可以将您的图像用作纹理图集,但您将无法使用SKTextureAtlas,您必须将它们分解出来。

如果您查看 SKTexture,您有一个名为init(rect: CGRect, in: SKTexture). 这将为您创建一个新的 SKTexture 对象,同时仍然引用原始纹理的纹理内存空间。你只需要使用类似 plist 的东西来加载所有CGRRect信息来创建这个图集。

例子:

let textureAtlas = SKTexture(imageNamed:"CEm72.png")  //I convert your jpg to png somehow
let rectDarkKnight = CGRect(x:0,y:96,width:32,height:32)
let texDarkKnight = SKTexture.init(rect: rectDarkKnight, in: textureAtlas)
于 2016-11-11T15:18:43.840 回答