Macos SCNRender快照不存在';不要总是应用抗锯齿
问题出在这里。左边是我在SCN视图中看到的。右边是我从SCNRender的那场戏的Macos SCNRender快照不存在';不要总是应用抗锯齿,macos,cocoa,3d,scenekit,Macos,Cocoa,3d,Scenekit,问题出在这里。左边是我在SCN视图中看到的。右边是我从SCNRender的那场戏的快照中得到的。我在卡塔琳娜 我在UI中有一个场景和一种方法来对该场景进行快照。我是这样做的 snapshotRenderer.scene = scnView.scene snapshotRenderer.snapshot(atTime: mySceneTime, with: mySize, antialiasingMode: SCNAntialiasingMode.multisampling4X) 我试
快照中得到的。我在卡塔琳娜
我在UI中有一个场景和一种方法来对该场景进行快照。我是这样做的
snapshotRenderer.scene = scnView.scene
snapshotRenderer.snapshot(atTime: mySceneTime, with: mySize, antialiasingMode: SCNAntialiasingMode.multisampling4X)
我试过的
我的理论是,snapshot
方法会在整个渲染周期结束之前捕获渲染内容,并完成所有抗锯齿采样(如果有)。该理论基于这样一个事实:在应用抗锯齿之前,我确实会在scnView
中看到相同的粗糙边缘
所以,如果运气不好,我试着用
snapshotRenderer.scene!.isPaused = false
snapshotRenderer.isPlaying = false
及
还有一个SCNTransaction.begin()
和.commit()
。但什么都不管用
在上述尝试之后,我还尝试使用DispatchQueue.main.asyncAfter
等待3秒钟,然后调用快照。那也没用 视图是否已将isJitteringEnabled
设置为true
?屏幕截图似乎启用了抗锯齿功能,但这可能只是因为图像上传到那里时缩小了尺寸。视图是否已将isJitteringEnabled
设置为true
?屏幕截图似乎启用了抗锯齿功能,但可能这只是因为上传到那里的图像被缩小了。看起来就是这样!谢谢如果你创建它,我会批准它作为一个答案
self.snapshotRenderer.update(atTime: mySceneTime)