Spritekit纹理图集裁剪/透明度问题

时间:2015-07-05 06:25:07

标签: ios sprite-kit texture-atlas

据我所知,当创建Atlas时,图像为:

a)轮换

b)修剪多余的透明像素

c)颜色格式可能会发生变化等

因此,如果我有一个50像素高的图像,但只有图像的顶部是纯色,底部是完全透明的。此图像将存储在高度为25像素的图集中,并且将丢弃透明像素。

我很难理解的是......

当您从地图册将此图像显示在屏幕上时会发生什么?

我应该找回原始图像的精确副本(在它缩小到25像素高度之前)吗?

似乎在Xcode 6.x及以下版本中确实会发生这种情况:

  • 如果我在整个屏幕上填充此图像(顶部50%纯色,底部50%透明),xcode 6我会看到屏幕的上半部分是纯色,底部是透明的

如果我使用最新的SDK做同样的事情,屏幕的前25%是透明的,中间的50%是我的纯色,底部的25%是透明的。

我不知道是否正在将透明像素添加回图像,如果我实际处理的是我现在在图集中看到的完全相同的图像(裁剪/修剪过的透明像素)或者我从地图集中回来的是我的图像,透明空间同样返回到每一边(在一边或另一边)。

我真的很想了解发生了什么(现在看起来像是一个错误)。

我知道很多人建议在透明空间的角落使用1%的alpha像素,以确保图像按照他们想要的方式返回,但我不认为这是一个很好的解决方案(使图集图像更大)如果你看起来很难,像素可以看到1%)

任何人都可以告诉我这是否是一个错误,如果有一个原因,为什么我的所有带有透明像素的图像现在返回位于宽x高度框架底部的图像?

0 个答案:

没有答案