我正在玩弄 SpriteKit,我正在从 UIImage 创建 SKTexture,然后使用 SKSpriteNode 将 child 添加到我的 SKScene(作为背景),一切正常,除了 UIImage 看起来与原始图像,我尝试在 photoshop 中重新创建图像,但问题仍然存在,在模拟器和真实设备以及不同的图像颜色上进行测试,没有变化。
图片格式为PNG,我在Xcode 5中通过Images.xcassets添加
图片、结果:
不同的图像,结果:
我在我的 SKScene 子类中使用以下代码:
- (id)initWithSize:(CGSize)size
{
if (self = [super initWithSize:size]) {
SKTexture *textureGradient = [SKTexture textureWithImage:[UIImage imageNamed:@"Image"]];
SKSpriteNode* spriteGradient = [SKSpriteNode spriteNodeWithTexture:textureGradient];
[self addChild:spriteGradient];
}
return self;
}
我做错了什么?
如有任何帮助,我们将不胜感激。 :)
最佳答案
解决方法:
这是我的错,图像位置错误,所以我更改了position属性:
SKTexture *textureGradient = [SKTexture textureWithImage:[UIImage imageNamed:@"Image"]];
SKSpriteNode* spriteGradient = [SKSpriteNode spriteNodeWithTexture:textureGradient];
spriteGradient.position = CGPointMake(CGRectGetMidX(self.frame),CGRectGetMidY(self.frame));
[self addChild:spriteGradient];
关于ios - 来自 UIImage 的 SKTexture 看起来不同,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21765128/