opengl es 颜色和着色

本文主要介绍了OpenGL ES中如何使用三角形扇形优化坐标数据,并讲解了颜色属性的设置,包括为每个顶点添加RGB分量颜色,以及如何通过varying变量实现颜色的平滑过渡。此外,还提到了内存字节偏移量STRIDE在处理坐标和颜色数据时的作用。
摘要由CSDN通过智能技术生成

上一节介绍了opengl es着色器原理和过程
我们对着色器原理和过程有了较为详细的理解,并且重点讲解了使用顶点着色器来实现opengl基本图元(点,直线,三角形)的位置,那么本节讲解opengl es对颜色的绘制。

三角形扇:
之前讲解如果想描述一个长方形可以用两个三角形来描述,比如:
// Triangle 1
-0.5f, -0.5f,
0.5f, 0.5f,
-0.5f, 0.5f,
// Triangle 2
-0.5f, -0.5f,
0.5f, -0.5f,
0.5f, 0.5f,
。。。。
很容易发现有很多坐标重复的问题,特别是复杂图形这样组成坐标的数组里有大量的数据冗余,为了解决这个问题提出了三角形扇的概念。如下图:
这里写图片描述
我们在桌子中间引入一个点(0,0)即1位置作为起始点,使用相邻两个顶点创建第一个三角形,接下来的每个顶点都会创建一个三角形,围绕起始点按照扇形展开,当最后重复第二个点时我们知道绘制完成。坐标位置数组也变成如下:

    /*
        float[] tableVerticesWithTriangles = {
            // Triangle Fan
               0,     0,            
            -0.5f, -0.5f,             
             0.5f, -0.5f,
             0.5f,  0.5f,
            -0.5f,  0.5f,            
            -0.5f, -
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值