OpenGLES demo - 6. Cull Face

原创文章,转载请注明链接 http://blog.csdn.net/hoytgm/article/details/34464751

这次简单的讲一下OpenGLES中的Cull Face,也就是面剔除。这一步通常发生在Fragment shader 之前,将我们不需要的面或看不见的面(比如背面)给剔除掉,这样可以很大程度上减轻fragment shader的压力,提高渲染的性能。


首先,我们需要启用Cull face的功能。

glEnable(GL_CULL_FACE);


刚才说到我们要剔除不需要的面,比如背面。那怎么区分一个面是正面还是背面呢?GLES,其实也是图形学中,我们用顺时针和逆时针来区分。但是不是说顺时针就是正面,逆时针就是反面,反过来也不成立。究竟一个面是正面还是反面,是由开发者自己来决定的。例如,我们这里将顺时针设置为需要剔除,那其实言外之意就是我们认为逆时针为正面。

glCullFace(GL_CW);
CW的意思是clockwise,也就是顺时针。如果需要逆时针的话,则是CCW,也就是counter-clockwise.


然后,我们建立顶点的时候,如果是逆时针建立的话,那我们就能画出来三角形,例如这样的顺序

    float vertices[] =
    {
        -0.5f, -0.5f, 0.5f, 1.0f,
        0.5
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值