我該如何將dds紋理文件加載到OpenGL 2紋理或立方體貼圖紋理中?DDS紋理加載
Q
DDS紋理加載
3
A
回答
4
我相信你使用glCompressedTexImage2DARB方法和它的朋友。
This PDF似乎包含一些有前途的信息,可能會對您有所幫助。
0
如果DDS包含壓縮紋理,則使用glCompressedTexImage2DARB(),如果它包含通常的glTexImage2D過程所應用的未壓縮數據。如果DDS文件包含mipmap,則爲每個mipmap級別添加一次,如果是立方圖,則爲每個cubemap添加一次。
有關如何閱讀DDS文件中的標題和數據,請在MSDN或DirectX SDK中查找它的文檔。這是一個相當標準的容器格式,沒有太多驚喜。
請注意,DDS使用左上角圖像原點,而OpenGL假定圖像數據爲左下角原點。這意味着您可能需要在加載後垂直翻轉DDS圖像。如果它們位於DXT1/3/5中,您可以在不進行解壓縮的情況下執行此操作,但這是一個稍微煩瑣的過程,需要對每個4x4內容進行位操作壓縮塊。
3
根據您的需要,DevIL庫可以照顧爲OpenGL提供DDS文件內容。
相關問題
- 1. 使用Three.js加載DDS紋理SceneLoader
- 2. Three.js Colladaloader DDS紋理
- 3. 如何將壓縮的.dds圖像加載爲collada紋理?
- 4. 紋理加載
- 5. DDS紋理透明呈現黑色Opengl
- 6. Three.js紋理加載
- 7. JOGL紋理加載
- 8. 加載紋理LWJGL
- 9. Java - LWJGL加載紋理,僅加載我加載的最新紋理
- 10. 緩慢的紋理加載
- 11. 用JSONloader加載紋理
- 12. 在three.js中加載紋理
- 13. 瞭解andengine紋理加載
- 14. onProgress與Three.js紋理加載
- 15. javascript爲webgl加載紋理
- 16. unity3d中預加載紋理
- 17. 隨機加載紋理
- 18. Direct3d9加載紋理失敗
- 19. opengl es 2.0紋理加載
- 20. 紋理加載和映射
- 21. Three.js - 無法加載紋理
- 22. 顯示加載的紋理
- 23. Three.js紋理加載失敗
- 24. 加載多個紋理openGL
- 25. 使用DirectXTex加載紋理
- 26. Android:OpenGL重新加載紋理
- 27. WebGL - 等待紋理加載
- 28. 在Init中加載紋理()
- 29. 無法加載紋理
- 30. Three.js JSONLoader;紋理未加載