我试图获取一个包含SKScene的视图的屏幕抓取.我使用的技术是:
UIGraphicsBeginImageContextWithOptions(self.view.bounds.size, NO, scale);
[self.view.layer renderInContext:UIGraphicsGetCurrentContext()];
UIImage *viewImage = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
Run Code Online (Sandbox Code Playgroud)
这适用于普通的UIViews,但无论出于何种原因,它忽略了SKScene中的所有精灵.
我不确定这是否是一个错误,或者Sprite Kit的渲染是否与UIGraphics分开.
问题:当UIViews的工作方式似乎无法与Sprite Kit一起使用时,或者是否有人使用Sprite Kit使用UIGraphics上下文时,如何获取SKScene的屏幕抓取?
我需要把一个内容拿出来NSView放在NSImage一个实验项目中.这可能吗?我做了一些谷歌搜索,尝试了我找到的两种方法 - 但它们并没有真正起作用.有什么建议?
我有一些地图集(folder.atlas)添加到我的xCode项目中,通常使用它们SKTextures按名称为我的精灵创建.但是,现在我看到我可能需要在Sprite Kit和基于UIView的类之间共享一些图像.
SKTexture* texture = [[SKTextureAtlas atlasNamed:@"Jetpack"] textureNamed:imageName];
//how to get UIImage?
Run Code Online (Sandbox Code Playgroud)
有没有办法让我在运行时从地图集中获取UIImage?