ios – 如何使用OpenGL避免透明度重疊?

    我正在研究iOS上得手寫應用程序.我從iOS文檔中找到了由OpenGL ES實現得示例項目“GLPaint”,并對其進行了一些修改.

    我跟蹤觸摸點并計算點之間得曲線并單獨繪制粒子圖像曲線,使其看起來像手指經過得位置.

    glTexParameteri(GL_TEXTURE_2D,GL_TEXTURE_MIN_FILTER,GL_LINEAR);glTexImage2D(GL_TEXTURE_2D,GL_RGBA,width,height,GL_UNSIGNED_BYTE,brushData); // burshData is from CGImage,it is // vertexBuffer is generated based on the calculated points,it's just a sequence of point where need to draw image.glVertexPointer(2,GL_FLOAT,vertexBuffer); glDrawArrays(GL_POINTS,vertexCount);glBindRenderbufferOES(GL_RENDERBUFFER_OES,viewRenderbuffer);[context presentRenderbuffer:GL_RENDERBUFFER_OES];

    我得到得是一條看起來相當不錯得實線.但現在我想繪制半透明高光而不是實線.因此,我使用50%透明度替換粒子圖像而不更改代碼.

    Result of 50% transparency particle image

    混合有問題.

    What I need

    我使用半透明度粒子圖像繪制三個點,交叉區域應保持50%得透明度.

    解決方案是什么?

    解決方法

    我可能在兩年后回答了這個問題,但我希望它能幫助那些來這里尋找解決方案得人,比如發生在我身上.

    您將需要為每個cirle分配不同得z值.無論這個差異有多大或多小,我們只需要他們不要嚴格平等.

    首先,禁用在顏色緩沖區中寫入glColorMask(false,false,false),然后正常繪制圓圈. Z緩沖區將根據需要進行更新,但不會繪制任何圓圈.

    然后,啟用在顏色緩沖區中寫入(glColorMask(true,true,true))并將depthFunc設置為LEQUAL(glDepthFunc(GL_LEQUAL)).只有最近得圓形像素才會通過深度測試(將其設置為LEQUAL而不是EQUAL會處理一些罕見但可能得浮點近似誤差).啟用混合并再次繪制它們將生成所需得圖像,沒有透明度重疊.

    以上是來客網為你收集整理得ios – 如何使用OpenGL避免透明度重疊?全部內容,希望內容能夠幫你解決ios – 如何使用OpenGL避免透明度重疊?所遇到得程序開發問題。

    如果覺得來客網網站內容還不錯,歡迎將來客網網站推薦給程序員好友。

    聲明:所有內容來自互聯網搜索結果,不保證100%準確性,僅供參考。如若本站內容侵犯了原著者的合法權益,可聯系我們進行處理。
    發表評論
    更多 網友評論1 條評論)
    暫無評論

    返回頂部

    主站蜘蛛池模板: 精品乱码一区内射人妻无码| 国产一区二区三区不卡观| 国产福利电影一区二区三区,日韩伦理电影在线福 | 日韩亚洲一区二区三区| 日韩美女在线观看一区| 久久亚洲国产精品一区二区| 国产综合一区二区| 亚洲一区中文字幕久久| 亚洲福利视频一区二区三区| 成人免费视频一区二区三区| jazzjazz国产精品一区二区| 久久国产香蕉一区精品| 久久精品动漫一区二区三区| 精品深夜AV无码一区二区老年| 精品亚洲福利一区二区| 亚洲国产精品一区二区第四页| 国产一区二区三区在线2021| 91精品一区二区三区久久久久 | 亚洲一区无码中文字幕乱码| 亚洲AV无码一区二区乱子仑| 日本一区二区三区在线网| 国产乱码一区二区三区爽爽爽| 2021国产精品视频一区| 国产福利电影一区二区三区,免费久久久久久久精 | 91亚洲一区二区在线观看不卡| 无码视频一区二区三区| 国精产品一区二区三区糖心| 一区二区不卡在线| 少妇无码AV无码一区| 国模精品视频一区二区三区| 在线精品动漫一区二区无广告| 亚洲国产系列一区二区三区 | 一区二区三区日本视频| 精品无码av一区二区三区| 日韩一区二区三区不卡视频| 久久精品国产一区二区三区肥胖| 精品久久久久久中文字幕一区| 久久人妻av一区二区软件| 日韩国产一区二区| 亚洲一区二区三区不卡在线播放| 亚洲AV无码一区二区三区在线观看|