shader

作者: 许彦峰 | 来源:发表于2022-04-09 17:45 被阅读0次

    基础知识

    数据类型 说明
    float 浮点数
    vec4 4个浮点数组成的矢量3
    存储限定符 说明 特点
    uniform 一般用来表示变换矩阵,材质,光照参数和颜色等信息。 它可以在vertex和fragment共享使用(相当于一个被vertex和fragment shader共享的全局变量)
    attribute 一般用来表示一些顶点的数据,如:顶点坐标,法线,纹理坐标,顶点颜色等。 只能在vertex shader中使用的变量
    varying 一般vertex shader修改varying变量的值,然后fragment shader使用该varying变量的值。因此varying变量在vertex和fragment shader二者之间的声明必须是一致的。application不能使用此变量。 vertex和fragment shader之间做数据传递用的。

    Vertex.glsl

    用来描述顶点特性,如位置、颜色等

    void main(){
        gl_Position = vec4(0.0, 0.0, 0.0, 1.0);
        gl_PointSize = 10.0;
    }
    
    内置变量 说明 备注
    vec4 gl_Position 表示顶点的位置 必须赋值,否则无法正常工作
    float gl_PointSize 表示顶点的尺寸 默认值1.0

    Fragment.glsl

    void main(){
      gl_FragColor = vec4(1.0, 0.0, 0.0, 1.0);
    }
    
    内置变量 说明
    vec4 gl_FragColor 指定片元的颜色

    相关文章

      网友评论

          本文标题:shader

          本文链接:https://www.haomeiwen.com/subject/zqgpsrtx.html