我該如何將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. 紋理加載
- 3. DDS紋理透明呈現黑色Opengl
- 4. JOGL紋理加載
- 5. 加載紋理LWJGL
- 6. Three.js紋理加載
- 7. Java - LWJGL加載紋理,僅加載我加載的最新紋理
- 8. opengl es 2.0紋理加載
- 9. 瞭解andengine紋理加載
- 10. 紋理加載和映射
- 11. Android:OpenGL重新加載紋理
- 12. Three.js - 無法加載紋理
- 13. 添加紋理json不加載
- 14. Android空白紋理(延遲加載紋理)
- 15. 加載紋理不正確的紋理寬度/高度
- 16. 將新紋理加載到已定義的紋理名稱中
- 17. 如何將DDS紋理放在WPF中的OBJ中(C#)
- 18. 用於讀取和寫入DDS紋理的Java庫
- 19. three.js dds壓縮紋理uv地圖問題
- 20. openGL:如何禁用dds紋理上的像素插值
- 21. 使用WebGL將DDS(DXT3)紋理轉換爲ImageData
- 22. 塊紋理僅在庫存中加載
- 23. Artoolkit不加載OS X中的紋理
- 24. OpenGL土壤 - 無法加載紋理
- 25. 如何在DirectX上加載紋理?
- 26. OpenGL ES 2.0加載動態紋理
- 27. 加載只有alpha值的紋理
- 28. 使用OpenCV加載OpenGL紋理
- 29. Opengl obj物體加載器與紋理
- 30. 從另一個類加載紋理.XNA