【发布时间】:2013-04-03 01:14:41
【问题描述】:
我正在开发一个使用单个 OpenGL ES 实例的 Android 应用程序。在某些情况下,我会在其他所有内容之上绘制一个自定义(矩形)对话框,其中包含滚动文本、线条等。该对话框不会占据整个屏幕,并且我正在绘制的内容更大 而不是对话框,它在对话框中滚动,就像一个选取框。
当然,因为我正在绘制这个对话框last(在所有其他视图之上),我正在绘制的所有顶点都将是可见的,但我想告诉 OpenGL not 在任何渲染命令的对话框矩形之外绘制。像这样……
我的大部分绘图都是使用glDrawArrays(...) 使用FloatBuffer 数组完成的。我想要的是一种向 OpenGL 指定我希望 任何 绘图在指定区域之外不可见的方法。
我对剔除了解不多,但这似乎与我正在寻找的内容非常相关。但是,剔除似乎只是为了跳过从 3D 相机视图中“看到”的三角形的绘制,而我想“跳过”在视口内任意矩形之外的任何三角形的绘制.
【问题讨论】:
-
您要查找的术语是“剪辑”。如果三角形在视锥体之外,opengl 会自动裁剪它们。我应该补充一点,如果您需要在视口内剪辑片段,则必须使用剪刀。
-
谢谢你,剪裁正是我所需要的!
标签: android graphics opengl-es 2d culling