Open Gl ES 剪裁和背面剔除

Dom*_*ngo 3 shader opengl-es glsl ios

我需要在我的项目中获得一些性能,所以我想到了实施裁剪,然后再进行背面剔除。

所以我在我的顶点着色器中查看顶点是否面向我,如果它是真的,我渲染它,如果不是,则不。但是我怎么说在顶点着色器中没有渲染 oO

与剪辑相同,我怎么说只在顶点着色器中绘制这一部分,或者我在这里有什么问题,我退出了 Open Gl 的新项目,我的项目是针对 iPhone 的,它是 OpenGl ES 2.0。

Moh*_*ain 5

顶点不面向前方或后方。当 3 个或更多顶点相遇时,它们制作的平面(三角形)取决于惯例(时钟/反时钟)的正面或背面。

你只需要启用剔除,在你的着色器中做任何不同的事情

一些感兴趣的 API 是:(在 iOS 中应该或多或少相同,也不是 100% 符合 OGLES)

glDisable / glEnable with argument GL_CULL_FACE
glCullFace  with argument GL_FRONT, GL_BACK or GL_FRONT_AND_BACK
glFrontFace with argument GL_CW or GL_CCW
Run Code Online (Sandbox Code Playgroud)