我试图在用户按下屏幕时显示用户手指后面的场景的放大预览。我提取节点的纹理,并使用下面的代码将其添加回场景
if let previewTexture = view?.textureFromNode(rootNode, crop: CGRect(origin: rootNodePoint, size: CGSize(width: 100, height: 100))) {
previewNode.texture = previewTexture
}
当我使用crop rect的方法返回nil,但没有裁剪它返回纹理很好。
我无法首先获得完整的纹理,然后裁剪它,因为整个节点树可以扩展到超过4098个点,并且sprite kit在这种情况下返回空纹理。
我不能使用UIView drawViewHierarchyInRect方法,因为它会返回一个预览本身的快照。
我创建了一个示例项目来重现该问题 TextureFromNodeBug
更新
此问题未在iOS 9.2上复制,因此这可能是一个框架错误