2010-08-26 179 views
0

編輯:好吧,對不起,我有一個簡單的編程錯誤,有沒有辦法刪除這個問題?OpenGL ES,你如何渲染PVR紋理?

我有一些壓縮紋理是PVR文件,但我似乎不能使用OpenGL ES在我的iPad應用程序中繪製它們。

我可以繪製PNG文件就好,我知道PVR文件正在正確加載。 是否需要調用一些特殊的OpenGL繪圖函數來繪製PVR文件?

編輯:我得到的只是一張白色圖片。

任何信息表示讚賞。

回答

0

繪製PVRTC紋理應該與任何其他紋理格式完全相同 - 它看起來更有可能是您的加載代碼是問題。加載過程中是否報告了任何GL錯誤?

的主要區別在加載未壓縮的紋理是在該行:

glCompressedTexImage2D(GL_TEXTURE_2D, level, GL_COMPRESSED_RGBA_PVRTC_4BPPV1_IMG, width, height, 0, size, data); 

glCompressedTexImage2D(GL_TEXTURE_2D, level, GL_COMPRESSED_RGB_PVRTC_4BPPV1_IMG, width, height, 0, size, data); 

確保你沒有設置GL過濾器模式,如果他們使用的貼圖不在紋理中。

在Apple的文檔中搜索PVRTC可以提供如何使用這些紋理的體面摘要。

0

上傳後,PVR紋理與其他格式沒有區別。數據上傳過程中您忘記跳過標題,還是使用了錯誤的glCompressedTexImage2D參數?由於尺寸或顏色格式不正確,壓縮工具甚至有可能無法轉換圖像。