我正在尝试使用 Blender Python API 在 Blender 2.8 中渲染场景的帧,其中通过以下方式设置帧输出:
bpy.context.scene.render.filepath
一切正常,但我想知道是否可以在不将图像保存到光盘的情况下将帧渲染到内存中。
我还没有看到可以使用的函数或属性:RenderSettings API
这种内存渲染输出将是首选,因为渲染的帧然后被序列化并通过 HTTP 发送。
最佳答案
到目前为止,不存在任何选项。
有一种不可靠的方式可能适合您的需求。可以使用查看器节点设置合成器,该节点的图像内容可在 bpy.data.images['Viewer Node'].pixels
中访问。 .
你会发现一些关于 BSE 的问题,比如 this one这表明您可以访问查看器节点像素,但缺少更新可能会破坏您的工作流程。
有一个old bug report关于这个,但没有修复。
正如我在上述问题中所评论的,您可以尝试创建一个 RAM 支持 tmpfs磁盘保存渲染,其中可以消除磁盘IO。
关于python - blender API : rendering a frame to memory,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58790877/