在OpenGL中,我試圖將地形地圖使用texture3D獲得交融的紋理變化8個512x512的圖像。 但OpenGL的迫使我分配512x512x512數組,而不是512x512x8 什麼可以解決OpenGL的地形Texture3D地圖
回答
但Opengl的迫使我分配512x512x512
什麼給你的想法? 512×512×8是一種完全有效的3D紋理尺寸。對於地形,您也可以查看GL_TEXTURE_2D_ARRAY,它也使用glTexImage3D進行初始化,但不在圖層之間插值,在某些情況下非常有用。
但我需要插值來將一個紋理混合到另一個紋理 – 2013-05-08 15:36:07
@ user2362969:然後,只需使用GL_TEXTURE_3D,就可以使用您想使用的格式了。 – datenwolf 2013-05-08 15:51:37
對不起,我得到了什麼我錯了....是的,它的工作 – 2013-05-08 16:27:47
即使您需要使用插值法將一個紋理混合到另一個紋理中,也應該嘗試使用GL_TEXTURE_2D_ARRAY,然後在片段着色器中手動混合紋理。 儘管利用自動硬件放大過濾器似乎更好,但請記住,對於GL_TEXTURE_3D實現,6個方向上的相鄰像素將被緩存的可能性更大,並且根據我的理解,您更強調組中的單個2D紋理以及它們的相鄰層,所以最好讓硬件製作3條緩存線,每條線都在4個方向上。 這是一個好主意,嘗試兩個,看看什麼更好
- 1. OpenGL Texture3D FragmentShader寫入圖層
- 2. OpenGL中的地形小地圖?
- 3. 紋理Opengl地形?
- 4. 紋理映射到地圖集三角形地帶Opengl ES
- 5. Android谷歌地圖地形
- 6. Opengl:着色世界地圖?
- 7. OpenGL(libgdx) - 混合alpha地圖
- 8. OpenGL - 陰影地圖/深度地圖給出奇怪的結果
- 9. 河流通過地圖/矩陣不交疊的地形地圖?
- 10. 谷歌地圖:地圖類型(路線圖,地形)
- 11. 的OpenGL ES - 質地
- 12. 配件地名進入地圖形狀
- 13. 隱形地形
- 14. 網站地址欄圖形
- 15. Android谷歌地圖圓形
- 16. Xamarin地圖引腳隱形
- 17. 地圖形成在Java中
- 18. 開源分形地圖
- 19. 地圖形成使用reactivemongo
- 20. 斯卡拉圓形地圖
- 21. Xamarin形式 - 獲取地圖
- 22. 地圖塊包含形狀
- 23. 迭代地創建圖形
- 24. OpenGL,等距2D地圖和紋理
- 25. OpenGL Mipmapping:OpenGL如何決定地圖級別?
- 26. 谷歌地圖 - 在地圖上的200K +多邊形
- 27. JavaFX來自地圖的條形圖
- 28. 圖像地圖中的高亮矩形
- 29. 谷歌地圖api多邊形圓形城市地點
- 30. Android谷歌地圖:隱藏整個地圖的多邊形或形狀
*「但OpenGL迫使我分配512x512x512陣列,而不是512x512x8什麼是解決方案」* - 是否真的?你是如何得出這個結論的?因爲只要你使用2.0以上的OpenGL版本(因此實現不超過10年),你可以使用任意的紋理尺寸(和寬高比)。 – 2013-05-08 15:31:44
@ChristianRau:3D紋理從未被要求是立方體。你可以*總是*使用512x512x8(假設最大3D紋理尺寸允許512).. – 2013-05-08 15:51:56
@NicolBolas Interresting,我認爲這是允許矩形尺寸的NPOT,但我想那時只適用於2D紋理。那麼512x8x512紋理怎麼樣(愚蠢的問題,但可能是2D子部分被特別處理?)? – 2013-05-08 16:57:10