我試圖在OpenGL ES中使用Cocos2d繪製半透明圖元(線,圓),但無法避免可見重疊區域。有誰知道如何解決這個問題?OpenGL,具有不透明度的圖元不可見重疊
7
A
回答
5
這是你平時遇到相當頻繁,即使在3D的一個問題。
我對Cocos2D不太熟悉,但在通用OpenGL中解決此問題的一種方法是用所需的Alpha通道填充幀緩衝區,將混合模式切換爲glBlendFunc(GL_ONE_MINUS_DST_ALPHA, GL_DST_ALPHA)
並繪製矩形。這個背後的想法是,你從畫框緩衝區中畫出一個具有所需透明度的矩形,但在進程中掩蓋你畫的區域,以便你後面的矩形在那裏被遮住。
另一種方法是將整個東西渲染爲紋理或使用不重疊的多邊形組裝形狀。
我不知道的Cocos2D是否支持任何這些...
2
我不知道什麼樣的能力cocos2d的具體規定,但我可以看到兩個選項,
一個,不喜歡重疊的,但而是構建更復雜的幾何圖形,以便每個像素只覆蓋一次,
二,使用模板緩衝區在繪製時創建一個遮罩,並拒絕任何已經被遮罩的像素。
相關問題
- 1. 重疊具有不同不透明度的CSS元素
- 2. 具有不透明度的CSS元素與html5視頻重疊
- 3. 重疊部分透明元素的不透明度
- 4. QML - 堆疊元素的不透明度
- 5. 重疊視圖的透明度
- 6. Div 70%不透明度,含有100%不透明度的圖像
- 7. 根據不透明度檢查元素的可見性
- 8. OpenGL;重疊Alpha透明粒子
- 9. 透明NSWindow具有可見控件
- 10. 元素的不透明度
- 11. 點擊不可見/重疊元素
- 12. OpenGL中的顏色不透明度
- 13. 重寫父視圖的不透明度
- 14. 沒有不透明IF元素是可見的
- 15. Bootstrap 3 - 我想橫跨列重疊一行(具有透明度)
- 16. 對具有重疊透明圖像的組的輸入檢測
- 17. 網格不可見時的網格不透明度問題
- 18. OpenGL混合函數消除原始重疊但保持整體不透明度
- 19. 更改不透明度時重繪窗口不透明度
- 20. 如何使用OpenGL避免透明度重疊?
- 21. 不重疊的透明控件
- 22. 重疊項目的Flash透明度
- 23. Google Maps API:更改基礎地圖的不透明度,但不更改疊加層的不透明度
- 24. QGraphicsPathItem重疊半透明的路徑變得更加不透明
- 25. Matplotlib:繪製具有不透明邊緣的透明直方圖
- 26. cv2 imread透明度不見了
- 27. JButton的不透明度/半透明度?
- 28. CSS重疊的透明箭頭元素
- 29. UITabBar不透明和重疊內容
- 30. 小冊子重疊形狀不透明
是的。 Fyi可以使用blendfunc屬性更改精靈的混合函數。即'mysprite.blendFunc =(ccBlendFunc){GL_ONE_MINUS_DST_ALPHA,GL_DST_ALPHA};' –