我正在开发Sprite Kit游戏,但我想不出为什么它无法按我想要的方式缩放图像。游戏是横向的。这是我有问题的代码:
SKSpriteNode *Pathway = [SKSpriteNode spriteNodeWithTexture:[SKTexture textureWithImageNamed:@"path.png"] size:CGSizeMake(568, 220)];
Pathway.zPosition = -1.0;
Pathway.position = CGPointMake(CGRectGetMidX(self.frame), CGRectGetMidY(self.frame));
Pathway.name = @"Pathway";
[self addChild:Pathway];
基本上,我希望纹理在屏幕上像这样:
但是由于某些原因,即使我更改了纹理的大小(568、220),它也会缩放图像并且不适合屏幕。
我尝试使用的
[Pathway setScale:0.7];
接近我要寻找的大小,但我必须恰好是568 x220。即使将其设置为568 x 220,它又如何使图像失真? 如果需要更多信息,请告诉我,我认为这就足够了。
最佳答案
我很确定您正在使用Retina显示器的设备上对此进行测试。
将path.png重命名为path@2x.png,并使用[SKTexture textureWithImageNamed:@"path"]
而不是[SKTexture textureWithImageNamed:@"path.png"]
。这应该可以解决您的问题。
阅读Apple教程Supporting High-Resolution Screens In Views了解更多信息。
关于ios - Sprite-Kit是否会使图像更大?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23233963/