【发布时间】:2011-05-06 12:58:37
【问题描述】:
我想混合两个矩形,但我只想绘制混合区域(矩形相交的区域),怎么做
【问题讨论】:
-
让自己成为注册用户。你会有更多的答案:-)
标签: opengl-es opengl-es-2.0 color-blending
我想混合两个矩形,但我只想绘制混合区域(矩形相交的区域),怎么做
【问题讨论】:
标签: opengl-es opengl-es-2.0 color-blending
如果您不想计算交集,您可以使用模板缓冲区来实现。在这里阅读:
http://bluevoid.com/opengl/sig00/advanced00/notes/node118.html
您可以在模板缓冲区上绘制两个矩形并递增,然后仅屏蔽值 > 2 的像素,即绘制 2 个或更多矩形的像素。
【讨论】:
两个凸矩形的交集总是一个矩形。那么为什么不只计算交点并只绘制那个呢?
【讨论】:
GLES20.glEnable( GLES20.GL_BLEND );
GLES20.glBlendFunc( GLES20.GL_SRC_ALPHA, GLES20.GL_ONE_MINUS_SRC_ALPHA );
但是您应该自己设置混合函数的行为。 在着色器中我设置了 alpha 通道。你可以看到结果:
blending post。 android项目的source
【讨论】: