有什麼辦法讓整個Android OpenGL ES場景變得透明嗎?這對小部件和壁紙很有用。任何使整個Android OpenGL ES場景透明的方法?
有一個Android專用答案here。但我的理解是,這種技術創造了一個透明的背景,人們可以進一步繪製透明的形狀。
我正在尋找一種讓整個場景在繪製完成後都變爲透明的方法。例如,在場景被繪製後,有沒有辦法改變整個顏色緩衝區的alpha值?
有什麼辦法讓整個Android OpenGL ES場景變得透明嗎?這對小部件和壁紙很有用。任何使整個Android OpenGL ES場景透明的方法?
有一個Android專用答案here。但我的理解是,這種技術創造了一個透明的背景,人們可以進一步繪製透明的形狀。
我正在尋找一種讓整個場景在繪製完成後都變爲透明的方法。例如,在場景被繪製後,有沒有辦法改變整個顏色緩衝區的alpha值?
是的,這很容易。您需要使用正確的顏色和混合功能,通過使用四邊形覆蓋整個視圖,將顏色緩衝區中的值混合。我認爲這將這樣的伎倆:
glBlendFunc(GL10.GL_ZERO, GL10.GL_SRC_COLOR)
這應該擴展了的colorbuffer,我認爲這是你想要的字母。
如果你可以要求API 14(Android 4.0),那麼有一個新的類可以解決這個問題:TextureView。在這個Android Developers blog post有一些關於它的信息。不幸的是,我認爲在以前的Android版本中沒有簡單的方法來做到這一點。