2
A
回答
0
沒有,所有顏色都分開。你需要一個像素着色器的那個
0
嗯,也許如果它被渲染成一個光度+ alpha的FBO,然後繪製?
那麼,無論是或複製到這樣的紋理,然後紋理回到FBO - 這就是說,在大多數情況下,FBO將是一個更好的解決方案(如果可用)。
請注意,我沒有測試過這個。
0
實際上,爲了完整起見,我會提到如果支持GL_ARB_imaging擴展,有一種可能的解決方案:GL_COLOR_MATRIX,它轉換傳入的RGBA值。你可以在上面3x3矩陣設置爲全1/3.0,像這樣:
GLFloat graymat[] = {.33,.33,.33,0,.33,.33,.33,0,.33,.33,.33,0,0,0,0,1};
glMatrixMode(GL_COLOR_MATRIX)
glLoadIdentity()
glMultMatrixf(graymat)
但是偉大的這聽起來可能,但是,並非所有的驅動程序支持這個硬件,這意味着,根據您的OpenGL實現,你的驅動程序可能:A)完全忽略顏色矩陣,B)回退到軟件渲染,或者C)(如果擴展不支持)引發一個GLError。
如果您正在爲有限的一組平臺編寫代碼,並且它們支持此擴展,那麼這將是最簡單的方法。否則,你需要另一種方法。
相關問題
- 1. Alpha與OpenGL ES 2.0混合?
- 2. Photoshop「混合模式」與OpenGL
- 3. 將OpenCL與OpenGL混合
- 4. Android OpenGL黑色與混合
- 5. OpenGL的 - 混合
- 6. OpenGL alpha混合
- 7. OpenGL混合(Java)
- 8. Opengl-es 1.1灰度FBO
- 9. OpenGL混合呈現灰黑色的黑色?
- 10. 混合OpenGL和UIKit
- 11. 混合DirectX和OpenGL
- 12. OpenGL混合問題
- 13. OpenGL混合GL_SRC_COLOR/GL_DST_COLOR
- 14. 混合問題(OpenGL)
- 15. OpenGL點精靈與深度測試 - 一個混合問題?
- 16. opengl - 與framebuffer的先前內容混合
- 17. OpenGL與源和目標alpha的混合
- 18. OpenGL與透明背景混合?
- 19. OpenGL Quad只與背景混合
- 20. OpenGL ES 2.0,與所有東西混合
- 21. 在圖像中結合了背景混合模式和灰度
- 22. 在Matlab中使用imfuse來混合灰度圖像的alpha混合
- 23. 混合OpenGL ES 1和OpenGL ES 2
- 24. OpenGL(libgdx) - 混合alpha地圖
- 25. 混合石英和OpenGL?
- 26. OpenGL混合單色顏色
- 27. OpenGL透明紋理(混合)
- 28. Slick2d和opengl混合 - java
- 29. OpenGL es 2.0混合問題
- 30. 延期渲染opengl混合
可以創建這樣的FBO嗎? – 2010-10-24 11:35:57
也許你可以渲染到亮度+ alpha紋理 – 2010-10-24 11:36:23
是的,這就是我的意思 - FBO基本上就是這樣,渲染到紋理。如果失敗,請嘗試正常的複製到紋理,然後將其複製回幀緩衝區。我應該自己嘗試一下......哦,根據您的要求,alpha可能需要也可能不需要。 – 2010-10-25 17:18:11