2011-11-28 71 views
0

我有幾個關於如何渲染PVR的問題。Qt和OpenGL如何渲染PVR

我很困惑如何從PVR獲取數據到屏幕。我有一個準備好繪製圖片的窗口,我有點卡住了。我需要從PVR獲得什麼參數才能繪製紋理?在本地使用jpeg和png,您可以從目錄加載圖像,但PVR會如何發生?

回答

2

取決於PVR內部數據的格式。如果是支持的標準,那麼只需將其複製到具有glTexSubImage2D()的紋理,否則您需要將其解壓縮爲OpenGL可以理解的內容 - 例如RGB或RGBA。

編輯 - OpenGL是一個顯示庫(遠不止這些),它不讀取圖像,解碼電影或做聲音。

TGA文件通常非常簡單,未壓縮的RGB或RGBA圖像數據,解碼文件,提取圖像數據並將其直接複製到opengl紋理應該是微不足道的。

,因爲您標記問題的Qt可以使用QImage加載TGA和Using QImage with OpenGL

+0

嗯,我試圖加載的TGA,所以我怎麼能獲取到的東西,openGL的可識別。然後,我會困惑於什麼數據然後需要再渲染。我認爲文件名是不夠的? – Bushes

+0

由於第二個描述瞭如何繪製紋理(使用FBO等),而不是如何渲染紋理四邊形,因此您的鏈接選擇相當糟糕。第三個鏈接使用'glDrawPixels',與渲染紋理四元組相比,這總是一個壞主意。 –

+0

@Chris,對不起,我粘貼了QImage的錯誤標籤。無論如何,如果OP有Qt的話,其他的無關緊要 –