我在illustrator上创建了一个圆角矩形并导出为png,然后将此图像添加到texturepacker并导入到cocos2d。这里是我的矩形,您知道为什么角上有白色像素吗?
这是图片https://dl.dropboxusercontent.com/u/9018754/Screen%20Shot%202014-07-31%20at%2023.28.52.png
发布于 2014-08-01 14:27:57
可能是图像在Illustrator中被写为png8,并向白色背景混合。你也可以发布你在Illustrator中创建的png吗?
-更新--
图像看起来很好。
在你的设置中,“预乘Alpha”是关闭的。将图像导入cocos2d时,是否启用了预乘alpha?两个值必须匹配。否则你会得到一些奇怪的行为。
所以:试着在TexturePacker中启用它。
发布于 2014-08-05 06:27:00
是的,预乘Alpha解决了我的问题
将ccConfig.h修改为
#ifndef CC_FIX_ARTIFACTS_BY_STRECHING_TEXEL
#define CC_FIX_ARTIFACTS_BY_STRECHING_TEXEL 1
#endif
设置预乘alpha + exclude 1解决了我的问题,
它被写在注释行中
**
`如果启用,将使用以下公式计算纹理坐标:
**- texCoord.left = (rect.origin.x\*2+1) / (texture.wide\*2);****- texCoord.right = texCoord.left + (rect.size.width\*2-2)/(texture.wide\*2);**对于底部和顶部,相同。
此公式通过使用99%的纹理来防止伪影。
防止工件的“正确”方法是使用spritesheet--fixer.py或类似的工具。
受影响的节点:
**- CCSprite / CCSpriteBatchNode and subclasses: CCLabelBMFont, CCTMXLayer** **- CCLabelAtlas** **- CCParticleSystemQuad** **- CCTileMap**设置为enabled,设置为1。默认情况下禁用。 **
我不知道现在发生了什么,但我会更深入地检查代码,
谢谢你Andreas Löw
https://stackoverflow.com/questions/25068490
复制相似问题