将 JOGL 纹理转换为 BufferedImage

Posted

技术标签:

【中文标题】将 JOGL 纹理转换为 BufferedImage【英文标题】:Converting JOGL texture into BufferedImage 【发布时间】:2013-05-03 12:04:33 【问题描述】:

我对 JOGL 非常陌生。我正在尝试从纹理(不是纹理对象,而是带有句柄、存储的纹理)中创建一个 BufferedImage 对象(在我的代码的其他部分中使用)。到目前为止,在互联网上,我的搜索给了我从 BufferImage 获得纹理的结果,但不是相反,这是我的问题。

有没有办法做到这一点?顺便说一下,纹理是由我对其进行离屏渲染的帧缓冲区对象生成的。

我通过以下步骤以非常直接的方式创建我的纹理: 绑定纹理 设置纹理的属性 从数据中生成 解绑纹理。

【问题讨论】:

【参考方案1】:

您可以使用 glReadPixels 将 FBO 像素读入 byteBuffer

这里的答案会这样做并返回一个缓冲图像:ReadPixel in Jogl

【讨论】:

谢谢。几天前我看到了。它起作用了,但事实证明它对我来说非常昂贵,因为我的屏幕变化非常快。再次感谢您..!

以上是关于将 JOGL 纹理转换为 BufferedImage的主要内容,如果未能解决你的问题,请参考以下文章

Jogl,仅创建红色通道 u16 但得到“纹理类型和格式组合无效”

OpenGL正确附加纹理

将地球纹理贴图应用到 Sphere

如何将 OpenGL 纹理转换为 CUDA 纹理?

如何使用纹理将 fbx 转换为 usdz

使用帧缓冲区将深度缓冲区渲染到纹理中