0

我找到了一些代码,可以让我在 OpenGL 即时模式下绘制圆角矩形(此处)。

我想要做的是减少 alpha,离矩形的中心越远——就像在 Windows/Mac 窗口或对话框中找到的那样,例如在绘制阴影的地方。

有人可以指点我一个如何做到这一点的例子吗?

4

1 回答 1

1

这对于几何来说相对容易。

为两个圆角矩形创建顶点:一个内部矩形和一个外部矩形。将 1 的 alpha 分配给内部矩形,将 0 的 alpha 分配给外部矩形。对内部矩形和两个矩形之间的空间进行三角测量。除非您特别要求,否则 alpha 将在内部矩形和外部矩形之间平滑地插值。

像这样的东西:

圆角矩形的几何

使用纹理并将矩形切成 9 部分可能会获得更好的结果——这可能会通过更简单的几何图形和更简单的代码为您提供更好的输出,具体取决于您的应用程序。

于 2015-03-04T02:29:16.737 回答