2009-09-07 31 views

回答

2

在您可以使用FBO進行圖像處理之前,您需要知道如何處理OpenGL,因爲FBO可以簡單地用作渲染目標(用於渲染操作的輸出緩衝區)。一旦你熟練使用OpenGL並且可能知道如何進行着色器編程,你可以在FBO中完成幾乎所有的圖像,並且可以非常快速地完成。

更簡單的方法可能是使用CUDA(NVidia)或Stream Computing(ATI)來利用GPU的圖像處理能力,因爲這些API更接近於基於常規陣列的C++編程。與使用OpenGL相比,圖像處理的速度可能要慢一些,但仍然比傳統的CPU驅動代碼快。

2

幀緩衝區對象(FBO)只是一個基本工具,不能用於直接操作圖像。如果您知道如何在OpenGL中將圖像操作渲染到屏幕上,則可以使用FBO將它們渲染到屏幕外。因此,它們對於此任務實際上很有用,因爲您不受屏幕分辨率的限制,也不必用數千個閃爍圖像分散用戶注意力。然而,操作本身發生在OpenGL中,可能在片段着色器中。

訪問OpenGL forum以獲取有關如何從OpenGL基礎知識開始的建議。他們也有不少鏈接到sample code

相關問題