我想使用OpenGL调整图像大小。我更喜欢用Java编写,但C ++也可以。
我对整个事情都很陌生,所以这就是我所看到的文字过程:
你认为使用OpenGL和GPU比使用基于CPU的BLIT库更快吗?
谢谢!
答案 0 :(得分:5)
您可以简单地使用硬件blit功能:glBlitFramebuffer
,而不是将四元组渲染到目标FBO中。它的论点是直截了当的,但它需要仔细准备你的源和目标FBO:
glCheckFramebufferStatus
)glBindFramebuffer
)glDraw/ReadBuffers
)glBlitFramebuffer
,在参数我敢打赌它在GPU上要快得多,特别是对于大型图像。
答案 1 :(得分:1)
取决于,如果图像很大,使用OpenGL可能会更快。但是,如果它只是在调整大小进程而不再在GPU端进行处理,那么它就不值得,因为它很可能比CPU慢。
但是如果您需要调整图像大小,并且可以在OpenGL中实现进一步处理,那么这是一个值得的想法。