我在从UIImage设置SKSpriteNode时遇到问题。我在UIImage上使用桥,将图像转换为SKTexture,然后使用该SKTexture创建新的SKSpriteNode,但是我的代码不断崩溃,并显示以下警报“线程1:EXC_BAD_ACCESS(代码= 1,地址= 0x0)”
CGImageRef textureImage = (__bridge CGImageRef)(theUIImage);
SKTexture *heroTexture = [SKTexture textureWithCGImage:textureImage];
SKSpriteNode *hero = [SKSpriteNode spriteNodeWithTexture:heroTexture size:CGSizeMake(64, 64)];
最佳答案
不应将UIImage桥接到CGImageRef,而应使用:
CGImageRef textureImage = [theUIImage CGImage];
如果您的图片不是nil,它应该可以工作。
另外,您可以尝试:
SKTexture *heroTexture = [SKTexture textureWithImage:theUIImage];
小提示;始终检查“空”。