簡體   English   中英

OpenGL ES iphone中的橡皮擦

[英]Eraser in OpenGL ES iphone

我有兩個相互重疊的圖像。(卡片放在一起的方式)

現在,如果我將手指移到最頂部的圖像上,那么圖像的一部分應該變得透明。(該部分的不透明度應該變為0)。

我是OpenGL ES開發的新手。

請幫助我或給我任何建議來完成此功能。

提前致謝

您將需要使用幀緩沖對象(FBO)渲染到紋理。 渲染到所需的紋理,但僅限於alpha通道,使用glColorMask(使用它可以屏蔽除alpha之外的所有顏色通道),然后將圖案繪制到Alpha通道,將alpha設置為0.0,然后顯示紋理像平常一樣。

我剛剛做了類似的事情,我在GLBlending中找到了一個解決方案:

if (eraseMode) {
    glBlendFunc(1.0,0.0);
}
else {
    glBlendFunc(GL_ONE, GL_ONE_MINUS_SRC_ALPHA);
}

這需要一些化妝品,但這是一個符合基本需求的簡單解決方案。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM