【问题标题】:How do you mask an arbitrary area of an image to overlay another image?如何遮盖图像的任意区域以覆盖另一个图像?
【发布时间】:2012-11-18 02:13:19
【问题描述】:

我想遮盖图像的任意凸多边形区域并将另一个图像放入该区域。我找到了this posting,但我不清楚这是否仅适用于矩形区域而不适用于任意多边形。

我正在谈论的基本流程是在屏幕上有一个 (x,y) 坐标,该坐标将用作我的多边形的中心(对于我来说是一致的任意点的中心)。我想屏蔽这个区域,新图像(本质上是多边形)将显示,同时保持屏幕的其余部分不变。

我可以轻松快速地做到这一点吗?

【问题讨论】:

    标签: opengl-es ios4


    【解决方案1】:

    你必须使用stencil buffer。它基本上是另一种类型的缓冲区,具有过多的awesome applications,其中最简单的一个是屏蔽。虽然我不推荐任何 OpenGL ES 特定教程,但我强烈建议阅读一般教程,因为它并没有什么不同,而且肯定很吸引人。

    【讨论】:

      【解决方案2】:

      试试 glScissor...它可能是你想要的矩形。

      【讨论】:

      • glScissor 似乎只适用于矩形(如果我正确阅读了文档)。这是真的?我想要一个任意多边形,而不仅仅是一个矩形。
      • 哇,很久以前 :) 但是是的,我的回答是。正确的做法是围绕模板缓冲区。不过现在似乎不值得付出努力,看起来这个问题很久以前也被放弃了。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-03-04
      • 1970-01-01
      相关资源
      最近更新 更多