我正在尝试使用 spriteKit 制作一种 360° 可视化工具。在我的场景中,我创建了一个
spriteArray = [[NSMutableArray alloc] init];
我正在以这种方式填充它:
for ( int j=0; j<stepsY+1; j++)
{
NSMutableArray * innerArray = [[NSMutableArray alloc] init];
for ( int i=0; i<stepsX+1; i++) {
SKTexture *t = [SKTexture textureWithImageNamed:[NSString stringWithFormat:@"img_0_%d_%d.jpg", (stepsY-j),(stepsX-i)]];
[innerArray addObject:t];
}
[spriteArray addObject:innerArray];
}
例如,我将有一个 4x23 的二维数组;y 轴有 4 步,x 轴有 23 步;上
- (void) touchesMoved: (NSSet *)touches withEvent:(UIEvent *)event
我在用着
[sprite setTexture:....];
设置正确的纹理以进行可视化;
当我在模拟器上运行它时,它运行良好,但是当我在真实设备上尝试时,当我填充 spriteArray 时,应用程序崩溃并且 xcode 告诉我“由于内存错误而终止”;所以我检查了模拟器中 ram 的使用情况,我意识到这是巨大的...... 1.5gb;我的纹理是 1220x1220 jpg,每个 50kb 左右....所以似乎某处存在某种内存泄漏。
有人可以帮我吗?
谢谢