GLES20 是否绘制出边界顶点?

Does GLES20 draw out of bound vertices?

我正在尝试使用 OpenGL ES 2.0 为 Android 创建网格。我想了解的是额外的顶点是否使用更多的内存,即使它们没有绘制在屏幕上。例如,我正在绘制一条比可见区域长三倍的线。我正在使用这条线路 class - .

mLine = new Line();
mLine.setVertices(0f, -10f, 0f, 0f, 10f, 0f);
...
GLES20.glDrawArrays(GLES20.GL_LINES, 0, vertexCount);

在性能和内存方面这样做是否有效?

对于顶点可见但仍部分可见的线段,将被剪切到window,即它们的末端将如果他们看不见,就会被剪掉。完全在 window 之外的线将被 剔除 并且根本不会发送到光栅器进行绘制。但是,为了让 OpenGL 确定这一点,每一行都必须发送到图形管道。 (当然,如果您的代码事先确定它们不会被看到,也可以省略这些线以防止它们被绘制。)

因此,这与其说是使用更少内存的问题,不如说是消除不必要的工作。