zoukankan      html  css  js  c++  java
  • 着色器shaders

    着色器(shader)是运行在GPU上的小程序,为图形渲染管线某个特定部分而运行。

    着色器也是一种非常独立的程序,它们之间不能相互通信,它们之间唯一沟通只有通过输入输出。

    GLSL是为图形计算量身定制的,它包含一些针对向量和矩阵操作的有用特性。

    着色器的开头总是要声明版本,接着是输入和输出变量、uniform和main函数。

    每个着色器的入口点都是main函数,在这个函数中我们处理所有的输入变量,并将结果输出到输出变量中。

    通过 GL_MAX_VERTEX_ATTRIBS 来查询顶点属性。

    GLSL数据类型:intfloatdoubleuintbool

    GLSL两种容器类型:分别是向量(Vector)和矩阵(Matrix)。

    GLSL中的向量是一个可以包含有1、2、3或者4个分量的容器,分量的类型可以是前面默认基础类型的任意一个。

    类型含义
    vecn 包含n个float分量的默认向量
    bvecn 包含n个bool分量的向量
    ivecn 包含n个int分量的向量
    uvecn 包含n个unsigned int分量的向量
    dvecn 包含n个double分量的向量

    你可以分别使用.x.y.z.w来获取它们的第1、2、3、4个分量。GLSL也允许你对颜色使用rgba,或是对纹理坐标使用stpq访问相同的分量。

    GLSL定义了inout关键字专门来实现输入输出。

  • 相关阅读:
    线段树时间分治
    CDQ分治
    并查集练习
    hihocoder 1513 小Hi的烦恼 (bitset优化)
    线段树维护哈希
    使用swift语言进行IOS应用开发
    用jquery+Asp.Net实现省市二级联动
    苹果IOS与谷歌 android系统的UI设计原则
    优秀设计师应当知道的20大UI设计原则
    JQuery Easy Ui dataGrid 数据表格
  • 原文地址:https://www.cnblogs.com/wainiwann/p/9100699.html
Copyright © 2011-2022 走看看