小编Hun*_*ang的帖子

混合纹理以使用OpenGL轻柔地擦除alpha值

我有一个基于GLPaint示例代码的小涂料应用程序.它工作正常.我的问题是我需要实现一个"画笔"来擦除已经绘制的纹理.

我的目标是拥有一个柔软边缘的橡皮擦.现在我只使用了我用于绘图的相同纹理,但切换了混合功能

glBlendFunc(GL_SRC_ALPHA, GL_ONE);
Run Code Online (Sandbox Code Playgroud)

glBlendFunc(GL_ZERO, GL_ZERO);
Run Code Online (Sandbox Code Playgroud)

结果是方形矩形橡皮擦.没关系,但这不是我真正想要的.我需要柔软的边缘.我想制作一个圆形橡皮擦而不是方形矩形.

你有什么猜测如何实现这一目标?或者你知道是否有办法创建我自己的自定义混合功能?

iphone opengl-es erase

9
推荐指数
1
解决办法
3211
查看次数

标签 统计

erase ×1

iphone ×1

opengl-es ×1